ASP利用TCPIP.DNS组件实现域名IP查询

来源:asp之家 时间:2010-02-26 11:25:00 

昨天在写“同IP站点查询”工具的时候,需要先用ASP获取查询域名的IP,本来是用WSHSHELL组件,代码如下:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%Stime=Timer()%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>ASP域名IP查询</title>
</head>
<body>
<form name="form1" method="post" action="">
<table width="528" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td height="25" align="right"> </td>
    <td align="center">ASP域名IP查询</td>
    <td> </td>
  </tr>
  <tr>
    <td width="96" height="25" align="right">域名:</td>
    <td width="288" align="center"><input type="text" name="URL" value="<%=Trim(Request.Form("URL"))%>" size="35">
    <input type="hidden" name="Search" value="True"></td>
    <td width="144"><input type="submit" name="Submit" value="查询"></td>
  </tr>
</table>
</form>
<table width="528" align="center" cellpadding="0" cellspacing="0" border="0">
  <tr>
    <td width="64"> </td>
    <td width="464">
<%Search=Trim(Request.Form("Search"))
If Search="True" Then 
URL=Trim(Request.Form("URL"))
Set objWShell=CreateObject("WScript.Shell") 
Set objCmd=objWShell.Exec("ping "&url) 
StrPResult=objCmd.StdOut.Readall() 
Set objCmd=nothing
Set objWShell=nothing 
On Error Resume Next 
IP=strCut(StrPResult,"[","]",2) 
If Err Then
Err.Clear
IP="<b>此IP未知或域名不可用!</b>"
End if
Response.Write("<b>查询结果</b><br><br>您查询的域名:"&URL&"<br><br>IP地址为:"&IP&"<br>") 
'Response.Write("<p>"&Replace(StrPResult,vbCrLf,"<br>"))'输出详细内容
EndTime=Timer()
Response.Write("<br>查询时间共用:"&FormatNumber((EndTime-STime),3,-1)&"</b>秒")
End if
Function strCut(strContent,StartStr,EndStr,CutType) 
Dim strHtml,S1,S2
strHtml = strContent 
On Error Resume Next 
Select Case CutType
Case 1 
S1 = InStr(strHtml,StartStr) 
S2 = InStr(S1,strHtml,EndStr)+Len(EndStr) 
Case 2 
S1 = InStr(strHtml,StartStr)+Len(StartStr) 
S2 = InStr(S1,strHtml,EndStr) 
End Select
If Err Then 
strCute = "<b>没有找到需要的内容!</b>" 
Err.Clear 
Exit Function 
Else
strCut = Mid(strHtml,S1,S2-S1) 
End If
End Function%>
    </td>
  </tr>
</table>
</body>
</html>



  但是运行后一直提示“WshShell.Exec (0x80070005) 拒绝访问”,网上搜了好一会儿,没有找到真正解决问题的办法,但是意外地让我找到了另个一个可以轻易实现这个功能的组件-“TCPIP.DNS组件”,只要两行代码即可,如下:

<%Set DNS=CreateObject("TCPIP.DNS")
IP=DNS.GetIPByHost(www.aspxhome.com)%>



  这里把TCPIP.DNS组件上传到网上,需要的朋友可以下载,需要注意的一点:双击安装组件的时候,默认是安装在系统盘,比如"C:\Program Files\PSTRUH\TCPIP\",这里不要修改,否则可能无法使用。

标签:TCPIP.DNS,组件,域名,ip
0
投稿

猜你喜欢

  • 使用SqlBulkCopy时应注意Sqlserver表中使用缺省值的列

    2012-07-11 15:34:35
  • 总结showModalDialog和showModelessDialog用法

    2007-11-24 08:26:00
  • HTML标签tbody的用法

    2009-11-02 10:11:00
  • 介绍讲解MySQL安装下载登录

    2010-10-25 20:34:00
  • ASP中遍历和操作Application对象的集合

    2007-09-13 12:45:00
  • 三种数据库利用SQL语句进行高效果分页

    2008-11-28 14:52:00
  • css2.1实现多重背景和边框效果

    2010-06-23 19:02:00
  • 如何修改Editplus让图片自适应界面大小

    2007-09-26 12:37:00
  • 浏览器用户体验:Firefox初体验 VS The world

    2008-08-02 11:58:00
  • MySQL5创建存储过程实例

    2010-06-13 12:49:00
  • MySQL优化全攻略--相关数据库命令

    2008-11-01 17:03:00
  • Python保存数据至MySQL时中文问题

    2011-02-23 12:06:00
  • 多语言网站开发 不完全技术分析

    2008-02-18 12:52:00
  • 屏幕分辨率和布局简述

    2009-04-20 20:27:00
  • aspjpeg组件安装问题

    2008-09-27 17:52:00
  • 使用 XML HTTP Request 对象[翻译]

    2007-11-07 21:11:00
  • 使用css给图片添加阴影入门篇

    2009-07-06 14:38:00
  • WEB前端开发高性能优化之JavaScript优化细节

    2009-06-10 14:38:00
  • 使用VS2005调试ASP程序方法

    2007-11-02 09:56:00
  • 如何用MySQL-Front远程连接MySql?

    2010-12-03 16:02:00
  • asp之家 网络编程 m.aspxhome.com