CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  基础类

怎样把域名翻译成样应的IP地址?

楼主wiw(pcanywhere)2002-03-18 22:23:00 在 VB / 基础类 提问

?? 问题点数:20、回复次数:5Top

1 楼yell(我)回复于 2002-03-18 23:10:36 得分 0

ping   域名返回的就是ip地址Top

2 楼MoYu(魑魅魍魉)回复于 2002-03-18 23:33:41 得分 0

 
   
   
  http://www.lypear.com/index.asp?page=down/default.asp?typename=我的作品  
   
  我写的  
   
  Top

3 楼watt(瓦特)回复于 2002-03-19 08:56:56 得分 0

在DOS窗口中   PING   名Top

4 楼yell(我)回复于 2002-03-20 17:12:22 得分 20

上次跟你说ping,看你没给分。这次给你代码。其中的connection3就是ping的方法  
   
  modFunction中:  
  Option   Explicit  
   
  Public   Declare   Function   RegCloseKey   Lib   "advapi32.dll"   (ByVal   hKey   As   Long)   As   Long  
  Public   Declare   Function   RegOpenKey   Lib   "advapi32.dll"   Alias   "RegOpenKeyA"   _  
          (ByVal   hKey   As   Long,   ByVal   lpSubKey   As   String,   phkResult   As   Long)   As   Long  
  Public   Declare   Function   RegQueryValueEx   Lib   "advapi32.dll"   Alias   "RegQueryValueExA"   _  
          (ByVal   hKey   As   Long,   ByVal   lpValueName   As   String,   ByVal   lpReserved   As   Long,   lpType   As   Long,   _  
          lpData   As   Any,   lpcbData   As   Long)   As   Long  
  Public   Const   ERROR_SUCCESS   =   0&  
  Public   Const   APINULL   =   0&  
  Public   Const   HKEY_LOCAL_MACHINE   =   &H80000002  
  Public   Declare   Function   InternetGetConnectedStateEx   Lib   "wininet.dll"   Alias   _  
          "InternetGetConnectedStateExA"   (ByRef   lpdwFlags   As   Long,   ByVal   lpszConnectionName   As   String,   _  
          ByVal   dwNameLen   As   Long,   ByVal   dwReserved   As   Long)   As   Long  
   
  Public   Const   INTERNET_CONNECTION_MODEM   =   &H1&  
  Public   Const   INTERNET_CONNECTION_LAN   =   &H2&  
  Public   Const   INTERNET_CONNECTION_PROXY   =   &H4&  
  Public   Const   INTERNET_RAS_INSTALLED   =   &H10&  
  Public   Const   INTERNET_CONNECTION_OFFLINE   =   &H20&  
  Public   Const   INTERNET_CONNECTION_CONFIGURED   =   &H40&  
  Public   Declare   Function   InternetOpen   Lib   "wininet.dll"   Alias   "InternetOpenA"   _  
          (ByVal   lpszAgent   As   String,   ByVal   dwAccessType   As   Long,   ByVal   lpszProxyName   As   String,   _  
          ByVal   lpszProxyBypass   As   String,   ByVal   dwFlags   As   Long)   As   Long  
  Public   Declare   Function   InternetOpenUrl   Lib   "wininet.dll"   Alias   "InternetOpenUrlA"   _  
          (ByVal   hInet   As   Long,   ByVal   lpszUrl   As   String,   ByVal   lpszHeaders   As   String,   _  
          ByVal   dwHeadersLength   As   Long,   ByVal   dwFlags   As   Long,   ByVal   dwContext   As   Long)   As   Long  
  Public   Declare   Function   InternetCloseHandle   Lib   "wininet.dll"   (ByVal   hInet   As   Long)   As   Long  
  Public   Const   INTERNET_OPEN_TYPE_PRECONFIG   =   0  
  Public   Const   INTERNET_FLAG_RELOAD   =   &H80000000  
  Public   Const   INTERNET_FLAG_KEEP_CONNECTION   =   &H400000  
  Public   Const   INTERNET_FLAG_NO_CACHE_WRITE   =   &H400000  
   
  窗体中代码:  
  Option   Explicit  
   
  Private   Sub   Form_Load()  
   
          Frame1.Caption   =   "探测方式"  
          opt1.Caption   =   "Modem"  
          opt2.Caption   =   "LAN/Modem"  
          opt3.Caption   =   "Ping"  
           
  End   Sub  
   
  Private   Sub   cmdCheck_Click()  
           
          If   opt1.Value   Then  
                  CheckConnection1  
          ElseIf   opt2.Value   Then  
                  CheckConnection2  
          ElseIf   opt3.Value   Then  
                  CheckConnection3  
          Else  
                  MsgBox   "您尚未选择探测方式",   vbCritical,   "出错"  
                  Exit   Sub  
          End   If  
           
  End   Sub  
   
  Private   Sub   cmdExit_Click()  
   
          Unload   Me  
           
  End   Sub  
   
  Private   Sub   CheckConnection1()  
   
          Dim   ReturnCode   As   Long  
          Dim   hKey   As   Long  
          Dim   lpSubKey   As   String  
          Dim   phkResult   As   Long  
          Dim   lpValueName   As   String  
          Dim   lpReserved   As   Long  
          Dim   lpType   As   Long  
          Dim   lpData   As   Long  
          Dim   lpcbData   As   Long  
           
          lpSubKey   =   "System\CurrentControlSet\Services\RemoteAccess"   &   Chr$(0)  
          ReturnCode   =   RegOpenKey(HKEY_LOCAL_MACHINE,   lpSubKey,   phkResult)  
          If   ReturnCode   =   ERROR_SUCCESS   Then  
                  hKey   =   phkResult  
                  lpValueName   =   "Remote   Connection"  
                  lpReserved   =   APINULL  
                  lpType   =   APINULL  
                  lpData   =   APINULL  
                  lpcbData   =   APINULL  
                  ReturnCode   =   RegQueryValueEx(hKey,   lpValueName,   lpReserved,   lpType,   lpData,   lpcbData)  
                  If   ReturnCode   =   ERROR_SUCCESS   Then  
                          If   lpData   =   0   Then  
                                  MsgBox   "你的计算机未通过Modem连接",   vbInformation,   "连接检测"  
                          Else  
                                  MsgBox   "你的计算机通过Modem接通",   vbInformation,   "连接检测"  
                          End   If  
                  Else  
                          MsgBox   "你的计算机未通过Modem连接,但可能通过LAN连接",   vbInformation,   "连接检测"  
                  End   If  
          End   If  
          RegCloseKey   (hKey)  
   
  End   Sub  
   
  Private   Sub   CheckConnection2(Optional   ByRef   ConnectionInfo   As   Long,   Optional   ByRef   sConnectionName   As   String)  
   
          Dim   lFlags   As   Long  
          Dim   sNameBuf   As   String,   msg   As   String  
          Dim   lPos   As   Long  
          sNameBuf   =   String$(513,   0)  
          If   InternetGetConnectedStateEx(lFlags,   sNameBuf,   512,   0&)   Then  
                  lPos   =   InStr(sNameBuf,   vbNullChar)  
                  If   lPos   >   0   Then  
                          sConnectionName   =   Left$(sNameBuf,   lPos   -   1)  
                  Else  
                          sConnectionName   =   ""  
                  End   If  
                  msg   =   "你的计算机已经接入Internet"   &   vbCrLf   &   "连接名:"   &   sConnectionName  
                  If   (lFlags   And   INTERNET_CONNECTION_LAN)   Then  
                          msg   =   msg   &   vbCrLf   &   "连接使用了LAN"  
                  ElseIf   (lFlags   And   INTERNET_CONNECTION_MODEM)   Then  
                          msg   =   msg   &   vbCrLf   &   "连接使用了Modem"  
                  End   If  
                  If   lFlags   And   INTERNET_CONNECTION_PROXY   Then   msg   =   msg   &   vbCrLf   &   "连接使用了Proxy"  
                  If   lFlags   And   INTERNET_RAS_INSTALLED   Then  
                          msg   =   msg   &   vbCrLf   &   "RAS已安装"  
                  Else  
                          msg   =   msg   &   vbCrLf   &   "RAS未安装"  
                  End   If  
                  If   lFlags   And   INTERNET_CONNECTION_OFFLINE   Then  
                          msg   =   msg   &   vbCrLf   &   "您不在线"  
                  Else  
                          msg   =   msg   &   vbCrLf   &   "您正在线"  
                  End   If  
                  If   lFlags   And   INTERNET_CONNECTION_CONFIGURED   Then  
                          msg   =   msg   &   vbCrLf   &   "您的连接已经配置"  
                  Else  
                          msg   =   msg   &   vbCrLf   &   "您的连接尚未配置"  
                  End   If  
          Else  
                  msg   =   "您尚未接入Internet"  
          End   If  
          MsgBox   msg,   vbInformation,   "连接提示"  
           
  End   Sub  
   
  Private   Sub   CheckConnection3()  
   
          Dim   sTmp   As   sting  
          Dim   hInet   As   Long  
          Dim   hUrl   As   Long  
          Dim   Flags   As   Long  
          Dim   url   As   Variant  
          hInet   =   InternetOpen(App.Title,   INTERNET_OPEN_TYPE_PRECONFIG,   vbNullString,   vbNullString,   0&)  
          sTmp   =   Me.Caption  
          Me.Caption   =   "通过   Ping   WWW.CHINA.COM   检测..."  
          If   hInet   Then  
                  Flags   =   INTERNET_FLAG_KEEP_CONNECTION   Or   INTERNET_FLAG_NO_CACHE_WRITE   Or   INTERNET_FLAG_RELOAD  
                  hUrl   =   InternetOpenUrl(hInet,   "http://www.china.com",   vbNullString,   0,   Flags,   0)  
                  If   hUrl   Then  
                          MsgBox   "您的计算机已经接入Internet",   vbInformation,   "接入检测"  
                          Call   InternetCloseHandle(hUrl)  
                  Else  
                          MsgBox   "您的计算机已经接入Internet",   vbInformation,   "接入检测"  
                  End   If  
          End   If  
          Call   InternetCloseHandle(hInet)  
          Me.Caption   =   sTmp  
           
  End   SubTop

5 楼tian_yf(阿飞)回复于 2002-03-20 17:58:28 得分 0

楼上的,你的程序不好用。  
  测试MODEM时检测不到,  
  测试LAN/MODEM、且不在线时却检测到了MODEM,且还在线。  
  不在线时测试PING时又检测到在线。  
  总之,不好用。Top

相关问题

  • 如何由域名得到IP地址?
  • 怎样由域名得到ip地址?
  • 如何将域名地址转换成IP地址?
  • 如何由域名得到IP地址?(NULL)
  • 如何知道一个域名的ip地址,如 www.csdn.net
  • 知道IP地址能否测出它的域名?
  • 给一个IP地址,怎么样获取它的域名?
  • 多个域名能否指向同一个IP地址?
  • 一个IP地址,两台server,两个域名,怎样设置?
  • 知道对方的域名,如何查他的 IP 地址?

关键词

  • 检测
  • 测试
  • dll
  • longpublic
  • byval
  • advapi32
  • modem
  • long
  • ping
  • alias

得分解答快速导航

  • 帖主:wiw
  • yell

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo