ipwry源码

来源:互联网 发布:windows bash如何用 编辑:程序博客网 时间:2024/06/05 14:52

qqwry、ipwry都是cnss(http://blog.csdn.net/cnss/article/details/136069)出品,终于找到了源码,下载地址:http://download.csdn.net/detail/lgh1992314/6564157

http://download.csdn.net/detail/lgh1992314/6564163


简单实现下查询操作:


ipsearcher.h

#ifndef IPSEARCHER_H#define IPSEARCHER_H#pragma comment(lib, "ipsearcher.lib")extern "C"{void* __cdecl _GetAddress(const char *IPstr);//获取地址void* __cdecl GetAddressInt(unsigned int ip);//获取地址 bool __cdecl Reload();//重新加载ipwry.datunsigned int __cdecl IPCount();//返回有多少条IPchar* __cdecl DateTime();//返回数据生成的日期时间};#endif // IPSEARCHER_H 

test.cpp

#include <iostream>#include <string>#include "ipsearcher.h"using namespace std;#pragma comment(lib, "ipsearcher.lib")inline unsigned int str2ip(const char *lp){unsigned int ret = 0;unsigned char now = 0;while(*lp){if('.' == *lp){ret = 256 * ret + now;now = 0;}elsenow = 10 * now + *lp - '0';++lp;}ret = 256 * ret + now;return ret;}int main(void){cout <<"IPwry:存在" << IPCount() << "条记录" << endl;cout << "更新时间:" << DateTime() << endl;char **pstr = NULL;string str;while (cin >> str){//pstr = (char**)_GetAddress(str.c_str());  pstr = (char **)GetAddressInt(str2ip(str.c_str()));cout << pstr[0] << pstr[1] << endl;}return 0;}