教程中国
PHOTOSHOP CS9.0中文版 MAYA 8.5 FOR WINDOWS Corel Painter v9.0 Flash MX2004 中文版 Illustrator cs2 中文版
VC++6.0含sp6 中英文版 VB6.0 +sp6 简体中文版 Borland Delphi 7汉化版 MSDN for vb6.0中文版 Visual Studio 2005简体
教程中国下属 文件存储共享专家BIBIDU.COM 提供大型软件,教材,源码,电影,音乐,图书等下载 更多精品请点此进入
  您目前所在位置: 教程中国 >> VB >> 编程实例 >> VB 将域名转换成IP地址 RSS订阅
VB 将域名转换成IP地址
教程(视频,书籍)下载:  ASP.NET AutoCAD 数据库 C# ASP java photoshop 网页设计 delphi 3dmax Flash C++ VB 张孝祥 实例   更多请进入BIBIDU搜索
IT搜索引擎   

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 256) As Byte
szSystemStatus(0 To 128) 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 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 Long) As Long
Private Declare Function gethostbyname Lib "WSOCK32.DLL" (ByVal szHostname As String) As 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 String) As 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, 1, Len(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 = "MsgBox MyURL & "的IP地址是:" & Test(MyURL)
End Sub

来源:www.upschool.com.cn
作者:未知
关键字:IP地址,域名,转换,VB
发表日期:2007-2-9 16:30:01

网页显示有限 阅读全文请下载本文完整版WORD文档

上一篇:用Webbrowser控件MSHTMLCtl清除广告   下一篇:用VB创建开始菜单快捷方式(无需其他DLL)


本文的相类似文章
  • VB读出一个进程中所有的模块名和模块路径
  • 用VB创建开始菜单快捷方式(无需其他DLL)
  • VB 将域名转换成IP地址
  • VB 获取系统26项配置信息
  • VB UTF-8编码转换
  • VB 打开记录集的参数
  • VB断开网络连接!API源码
  • VB 读取收藏夹里的URL地址
  • VB 修改分辨率(不用重启)
  • VB 让文本框只能输入数字
  • 网友评论 查看本文全部评论
    笔 名: *
    评 论:
    最多500字。当前字数:0
    联系方式:
    验证码:
    在学习中进步 在进步中成长 教程中国相随您的成长之路
    华腾联合科技股份有限公司版权所有
    广告联系:Rosibo@163.com