灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:5629回复:1

C语言编写IP地址查询

楼主#
更多 发布于:2012-09-06 12:31

[cpp]
#include "stdafx.h"
BOOL GetPubIp(char *ip);
int main()
{
char myip[32]={0};
GetPubIp(myip);
cout<<myip<<endl;
return 0;
}
BOOL GetPubIp(char *ip)
{
HinterNET hInternet=NULL;
HINTERNET hConnect=NULL;
char szText[512]={0};
char *szAccept="Accept: */*\r\n\r\n";
char *szUrl="http://www.ip138.com/ip2city.asp";
Dword dwReadLen=0;
__try
{
   hInternet=InternetOpen("Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)",0,NULL,NULL,0);
   if(!hInternet)
    __leave;
   hConnect=InternetOpenUrl(hInternet,szUrl,szAccept,strlen(szAccept),INTERNET_FLAG_DONT_CACHE|INTERNET_FLAG_PRAGMA_NOCACHE|INTERNET_FLAG_RELOAD,0);
   if(!hConnect)
    __leave;
   InternetReadFile(hConnect,szText,512,;dwReadLen);
}
__finally
{
   if(hInternet)
    InternetCloseHandle(hInternet);
   if(hConnect)
    InternetCloseHandle(hConnect);
}
char *start=strstr(szText,"您的IP地址是:[");
if(!start)
   return FALSE;
start=start+15;
char *temp=strstr(start,"]");
strncpy(ip,start,temp-start);
return TRUE;
}

喜欢0 评分0
864642230
终身会员
终身会员
  • 注册日期2012-09-19
  • 发帖数102
  • QQ
  • 火币653枚
  • 粉丝16
  • 关注6
  • 忠实会员
  • 最爱沙发
沙发#
发布于:2013-01-12 22:54
支持,顶!

内容来自[手机版]

终身会员
回复(0) 喜欢(0)     评分
游客

返回顶部