| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 928 人关注过本帖
标题:ip
只看楼主 加入收藏
菜鸟VB
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2008-5-2
结帖率:75%
收藏
 问题点数:0 回复次数:6 
ip
请如何调用API函数获取本机计算机名和IP地址呢?
搜索更多相关主题的帖子: 计算机 API 函数 地址 获取 
2008-06-18 15:54
jxyga111
Rank: 8Rank: 8
来 自:中華人民共和國
等 级:贵宾
威 望:33
帖 子:6015
专家分:895
注 册:2008-3-21
收藏
得分:0 
用腳本也可以啊

烈焰照耀世界,斌凍凍千萬裏
2008-06-18 17:23
三断笛
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:31
帖 子:1621
专家分:1617
注 册:2007-5-24
收藏
得分:0 
这东西   随便翻翻API的资料都有  百度一下也多的是啊
2008-06-18 19:36
菜鸟VB
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2008-5-2
收藏
得分:0 
这东西 我在网上找了很久了都没知道哦,硬盘序列号倒是很容易找啦,你帮我找找吧 谢啦
2008-06-19 01:56
tig2
Rank: 2
等 级:论坛游民
帖 子:57
专家分:45
注 册:2007-4-11
收藏
得分:0 
'获取IP地址的API代码

Private Const WS_VERSION_REQD = &H101
Private Const WS_VERSION_MAJOR = WS_VERSION_REQD \ &H100 And &HFF&
Private Const WS_VERSION_MINOR = WS_VERSION_REQD And &HFF&
Private Const MIN_SOCKETS_REQD = 1
Private Const SOCKET_ERROR = -1
Private Const WSADescription_Len = 256
Private Const WSASYS_Status_Len = 128

Private Type HOSTENT
   hName As Long
   hAliases As Long
   hAddrType As Integer
   hLength As Integer
   hAddrList As Long
End Type

Private Type WSADATA
   wversion As Integer
   wHighVersion As Integer
   szDescription(0 To WSADescription_Len) As Byte
   szSystemStatus(0 To WSASYS_Status_Len) As Byte
   iMaxSockets As Integer
   iMaxUdpDg As Integer
   lpszVendorInfo As Long
End Type

Private Declare Function WSAGetLastError Lib "WSOCK32.DLL" () As Long
Private Declare Function WSAStartup Lib "WSOCK32.DLL" (ByVal wVersionRequired&, lpWSAData As WSADATA) As Long
Private Declare Function WSACleanup Lib "WSOCK32.DLL" () As Long
Private Declare Function gethostbyname Lib "WSOCK32.DLL" (ByVal hostname$) As Long
Private Declare Sub RtlMoveMemory Lib "KERNEL32" (hpvDest As Any, ByVal hpvSource&, ByVal cbCopy&)

' #VBIDEUtils#************************************************************
' * Programmer Name  : Waty Thierry
' * Web Site         : www.
' * E-Mail           : waty.thierry@
' * Date             : 13/10/98
' * Time             : 10:24
' * Module Name      : IP_Module
' * Module Filename  : IP.bas
' **********************************************************************
' * Comments         :
' * Find IP address ginving the hostname
' **********************************************************************

Function hibyte(ByVal wParam As Integer)
   
   hibyte = wParam \ &H100 And &HFF&
   
End Function

Function lobyte(ByVal wParam As Integer)
   
   lobyte = wParam And &HFF&
   
End Function

Sub SocketsInitialize()
   
   Dim WSAD As WSADATA
   Dim iReturn As Integer
   Dim sLowByte As String, sHighByte As String, sMsg As String
   
   iReturn = WSAStartup(WS_VERSION_REQD, WSAD)
   
   If iReturn <> 0 Then
      MsgBox "Winsock.dll is not responding."
      End
   End If
   
   If lobyte(WSAD.wversion) < WS_VERSION_MAJOR Or (lobyte(WSAD.wversion) = WS_VERSION_MAJOR And hibyte(WSAD.wversion) < WS_VERSION_MINOR) Then
      sHighByte = Trim$(Str$(hibyte(WSAD.wversion)))
      sLowByte = Trim$(Str$(lobyte(WSAD.wversion)))
      sMsg = "Windows Sockets version " & sLowByte & "." & sHighByte
      sMsg = sMsg & " is not supported by winsock.dll "
      MsgBox sMsg
      End
   End If
   
   If WSAD.iMaxSockets < MIN_SOCKETS_REQD Then
      sMsg = "This application requires a minimum of "
      sMsg = sMsg & Trim$(Str$(MIN_SOCKETS_REQD)) & " supported sockets."
      MsgBox sMsg
      End
   End If
   
End Sub

Sub SocketsCleanup()
   Dim lReturn As Long
   
   lReturn = WSACleanup()
   
   If lReturn <> 0 Then
      MsgBox "Socket error " & Trim$(Str$(lReturn)) & " occurred in Cleanup "
      End
   End If
   
End Sub

Sub Form_Load()
   
   SocketsInitialize
   
End Sub

Private Sub Form_Unload(Cancel As Integer)
   
   SocketsCleanup
   
End Sub

Private Sub Command1_click()
   Dim hostent_addr As Long
   Dim host As HOSTENT
   Dim hostip_addr As Long
   Dim temp_ip_address() As Byte
   Dim i As Integer
   Dim ip_address As String
   
   hostent_addr = gethostbyname(Text1)
   
   If hostent_addr = 0 Then
      MsgBox "Can't resolve name."
      Exit Sub
   End If
   
   RtlMoveMemory host, hostent_addr, LenB(host)
   RtlMoveMemory hostip_addr, host.hAddrList, 4
   
   ReDim temp_ip_address(1 To host.hLength)
   RtlMoveMemory temp_ip_address(1), hostip_addr, host.hLength
   
   For i = 1 To host.hLength
      ip_address = ip_address & temp_ip_address(i) & "."
   Next
   ip_address = Mid$(ip_address, 1, Len(ip_address) - 1)
   
   MsgBox ip_address
   
End Sub
2008-06-19 02:38
jxyga111
Rank: 8Rank: 8
来 自:中華人民共和國
等 级:贵宾
威 望:33
帖 子:6015
专家分:895
注 册:2008-3-21
收藏
得分:0 
晕啊这么多,还不如直接找个角本呢

烈焰照耀世界,斌凍凍千萬裏
2008-06-19 16:02
菜鸟VB
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2008-5-2
收藏
得分:0 
什么脚本呢?
介绍一下吧 谢谢
2008-06-19 16:37
快速回复:ip
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.032022 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved