Project1

标题: 如何用API获取自己IP? [打印本页]

作者: 灵魂の补给    时间: 2011-10-4 06:49
标题: 如何用API获取自己IP?
只要能获取就行,API什么什么都可以。dsu_plus_rewardpost_czw
作者: zjy807    时间: 2011-10-4 10:43
本帖最后由 zjy807 于 2011-10-4 10:49 编辑

我只知道可以使用
.DLL命令 GetIpAddrTable, 整数型, "IPHLPAPI.DLL", "GetIpAddrTable",  
    .参数 pIpAddrTable, PMIB_IPADDRTABLE, ,
    .参数 pdwSize, 整数型, 传址,
    .参数 border, 整数型, ,

Public Declare Function GetIpAddrTable Lib "IPHlpApi" (pIPAdrTable As Byte, pdwSize As Long, ByVal Sort As Long) As Long

Type IPINFO
dwAddr As Long
dwIndex As Long
dwMask As Long
dwBCastAddr As Long
dwReasmSize As Long
UnUsed1 As Integer
UnUsed2 As Integer
End Type

Type MIB_IPADDRTABLE
dEntrys As Long
mIPInfo(255) As IPINFO
End Type

获得IP地址,至于RM里怎么使用就不知道了,新手。。。

另外也从注册表中获得IP
作者: bbaugle    时间: 2011-10-4 10:58
本帖最后由 bbaugle 于 2011-10-4 11:24 编辑

我没有GetIpAddrTable函数的参数表。用外接程序来返回吧。
作者: fux2    时间: 2011-10-4 14:28
zjy807 发表于 2011-10-4 10:43
我只知道可以使用
.DLL命令 GetIpAddrTable, 整数型, "IPHLPAPI.DLL", "GetIpAddrTable",  
    .参数 pIp ...

我先告诉你这个
  1. RegOpenKeyEx = Win32API.new('advapi32', 'RegOpenKeyEx', 'lpiip', 'l')
  2. RegQueryValueEx = Win32API.new('advapi32', 'RegQueryValueExW', 'lppppp', 'l')
  3. RegCloseKey = Win32API.new('advapi32', 'RegCloseKey', 'l', 'l')
  4. hKey = '    '
  5. RegOpenKeyEx.call(-2147483646, 'adress', 0, 0x20019 | 0x0200, hKey)
  6. hKey = hKey.unpack('l')[0]
复制代码
再告诉你这个
  1. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces
复制代码
然后告诉你遍历找DhcpIPAddress是192开头的然后我就不动了。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1