VB將域名轉換成IP地址

          Option Explicit   
            
          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 256As Byte  
              szSystemStatus(
          0 To 128As 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 As Integer, lpWSAData As WSADATA) As Long  
          Private Declare Function WSACleanup Lib "WSOCK32.DLL" () As Long  
          Private Declare Function gethostname Lib "WSOCK32.DLL" (ByVal szHostname As String, ByVal HostLen As LongAs Long  
          Private Declare Function gethostbyname Lib "WSOCK32.DLL" (ByVal szHostname As StringAs Long  
          Private Declare Sub RtlMoveMemory Lib "KERNEL32" (hpvDest As Any, ByVal hpvSource As Long, ByVal cbCopy As Long)   
            
          Private Const WS_VERSION_REQD = &H101   
            
          Private Function Test(URL As StringAs String  
              InitializeWinSock   
              Test 
          = GetAddressByName(URL)   
              TerminateWinSock   
          End Function  
            
          Private Function GetAddressByName(strHostname As String)   
              
          Dim lngAddr As Long  
              
          Dim udtHost As HOSTENT   
              
          Dim lngIP As Long  
              
          Dim bteTmp() As Byte  
              
          Dim i As Integer  
              
          Dim strIP As String  
            
              lngAddr 
          = gethostbyname(strHostname)   
            
              
          If lngAddr = 0 Then  
                  
          MsgBox "Kein Host gefunden."  
                  GetAddressByName 
          = Null   
                  
          Exit Function  
              
          End If  
            
              RtlMoveMemory udtHost, lngAddr, LenB(udtHost)   
              RtlMoveMemory lngIP, udtHost.hAddrList, 
          4   
            
              
          ReDim bteTmp(1 To udtHost.hLength)   
              RtlMoveMemory bteTmp(
          1), lngIP, udtHost.hLength   
              
          For i = 1 To udtHost.hLength   
                  strIP 
          = strIP & bteTmp(i) & "."  
              
          Next  
              strIP 
          = Mid$(strIP, 1Len(strIP) - 1)   
            
              GetAddressByName 
          = strIP   
          End Function  
            
          Private Sub InitializeWinSock()   
              
          Dim udtWSAD As WSADATA   
              
          Dim lngRet As Long  
              lngRet 
          = WSAStartup(WS_VERSION_REQD, udtWSAD)   
              
          If lngRet <> 0 Then  
                  
          MsgBox "Winsock.dll konnte nicht initialisiert werden."  
                  
          End  
              
          End If  
          End Sub  
            
          Private Sub TerminateWinSock()   
              
          Dim lngRet As Long  
              lngRet 
          = WSACleanup()   
              
          If lngRet <> 0 Then  
                  
          MsgBox "Fehler " & lngRet & " beim Beenden von Winsock.dll"  
                  
          End  
              
          End If  
          End Sub  
            
          Private Sub Command1_Click()   
              
          Dim MyURL As String  
              MyURL 
          = "domain"  
              
          MsgBox MyURL & "的IP地址是:" & Test(MyURL)   
          End Sub  

          posted on 2010-10-20 20:20 aiaiwoo 閱讀(385) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          導航

          統計

          常用鏈接

          留言簿

          隨筆分類

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 云南省| 宁阳县| 桂东县| 新宾| 长阳| 博兴县| 上高县| 米泉市| 南安市| 鄂州市| 喀什市| 牙克石市| 宁乡县| 东明县| 盱眙县| 师宗县| 蒲江县| 咸阳市| 遵义县| 都江堰市| 古丈县| 梁山县| 石楼县| 黄陵县| 蕲春县| 永康市| 石林| 富顺县| 鸡泽县| 云南省| 曲周县| 武鸣县| 本溪| 太仆寺旗| 海原县| 甘南县| 景宁| 兴隆县| 大安市| 商河县| 贵溪市|