手机
当前位置:查字典教程网 >脚本专栏 >脚本其他 >在InstallShield中引用WINSOCK 的示例代码
在InstallShield中引用WINSOCK 的示例代码
摘要:通过以下示例,InstallShield可以用WINSOCK获取IP地址,可将以下文件保存为tcpip.rul#defineWSADESCR...

通过以下示例,InstallShield可以用WINSOCK获取IP地址,可将以下文件保存为tcpip.rul

#defineWSADESCRIPTION_LEN256

#defineWSASYS_STATUS_LEN128

typedef

WSAData

begin

INTwVersion;

INTwHighVersion;

charszDescription[WSADESCRIPTION_LEN+1];

charszSystemStatus[WSASYS_STATUS_LEN+1];

shortiMaxSockets;

shortiMaxUdpDg;

POINTERlpVendorInfo;

end;

WSADatastructWSAData;

WSADataPOINTERpWSAData;

typedefHostEnt

begin

POINTERph_name;

POINTERph_aliases;

shorth_addrtype;

shorth_length;

POINTERph_addr_list;

end;

HostEntstructHostEnt;

HostEntPOINTERpHostEnt;

SHORTnlen;

NUMBERnIPNetAddr;

NUMBERnVersion;

STRINGszMsg;

STRINGszDefault;

STRINGszURL;

STRINGszPath;

NUMBERnRC;

NUMBERnRC2;

STRINGszHostName;

STRINGszMYIPAddr;

POINTERpWinSockReturn;

typedefIPName

begin

STRINGszIPAddr[100];

end;

IPNameLocalIPName;

IPNamePOINTERpLocalIPName;

typedefIPAddrList

begin

POINTERpIPAddr;

end;

IPAddrListstructIPAddrList;

IPAddrListPOINTERpIPAddrList;

typedefIPAddPtr

begin

LONGnIPAddr;

end;

IPAddPtrstructIPAddPtr;

IPAddPtrPOINTERpIPAddPtr;

POINTERpIN_Addr_Struct;

prototypePOINTERwsock32.gethostbyname(BYREFSTRING);

prototypePOINTERwsock32.gethostname(BYREFSTRING,NUMBER);

prototypePOINTERwsock32.WSAStartup(INT,POINTER);

prototypePOINTERwsock32.inet_ntoa(NUMBER);

prototypePOINTERwsock32.WSACleanup();

prototypeintwsock32.WSAGetLastError();

program

pWSAData=&structWSAData;

nRC=UseDLL("wsock32.dll");

pWSAData->wHighVersion=1;

pWSAData->wVersion=1;

nVersion=0x02000002;//0x01000001

pWinSockReturn=WSAStartup(nVersion,pWSAData);

pWinSockReturn=gethostname(szHostName,100);

pHostEnt=gethostbyname(szHostName);

nlen=pHostEnt->h_length;

pIPAddPtr=pHostEnt->ph_addr_list;

pIPAddPtr=*pIPAddPtr;

nIPNetAddr=*pIPAddPtr;

//nIPNetAddr=pIPAddPtr->nIPAddr;

pLocalIPName=inet_ntoa(nIPNetAddr);

szMYIPAddr=pLocalIPName->szIPAddr;

MessageBox(szMYIPAddr,INFORMATION);

WSACleanup();

exit;

【在InstallShield中引用WINSOCK 的示例代码】相关文章:

linux Shell学习笔记第四天

linux Shell学习笔记第一天

用CE5.2版找武林外传一级基址的方法(图文教程)

利用命令进行简单的增量文件夹备份(win/linux)

InstallShield 隐藏密码输入的脚本

一个不错的shell 脚本教程 入门级

局域网设置自动配置脚本文件的写法与用途

在InstallShield中通过主机名获取IP地址的代码

Perl 与 Python 之间的一些异同整理

什么是脚本的简单解释

精品推荐
分类导航