用c#写的asp+域名查询程序

2016-01-29 14:04 4 1 收藏

用c#写的asp+域名查询程序,用c#写的asp+域名查询程序

【 tulaoshi.com - ASP.NET 】

终于有时间可以学点新东西了,今天大略看了一下有关asp+的资料,并且写了个域名查询的页面,感觉很不错,asp+比起
asp来进步实在是太大了,尽管用asp+组件也能实现域名查询的功能,并且前几天我用vc写过这么个组件,但用asp+简单方
便多了。好了,废话少提,看源码吧。

<% @Page Language="C#" %
<% @Assembly Name="System.Net" %
<% @Import Namespace="System.Net.Sockets" %
<% @Import Namespace="System.Text" %
<% @Import Namespace="System.IO" %
<% @Import Namespace="System.Collections" %
<script language="C#" runat="server"
void doQuery(Object sender, EventArgs e)
{
String strDomain = txtDomain.Text;
char[] chSplit = {'.'};
string[] arrDomain = strDomain.Split(chSplit);

int nLength = arrDomain.Length ;
Hashtable table = new Hashtable();
table.Add("de", "whois.denic.de");
table.Add("be", "whois.dns.be");
table.Add("gov", "whois.nic.gov");
table.Add("mil", "whois.nic.mil");

String strServer ; //define whois server
//if the domainname's end is cn then the server is cnnic ,otherwise is networksolutions
if (arrDomain[arrDomain.Length - 1] == "cn")
{
strServer = "159.226.6.139" ;
}
else
{
strServer = "whois.networksolutions.com";
}

if (table.ContainsKey(arrDomain))
{
strServer = table[arrDomain]].ToString();
}
else if (nLength == 2)
{
// 2-letter TLD's always default to RIPE in Europe
strServer = "whois.ripe.net";
}

String strResponse;
bool bSuccess = DoWhoisLookup(strDomain, strServer, out strResponse);
if (bSuccess)
{
txtResult.Text = strResponse;
}
else
{
txtResult.Text = "Lookup failed";
}
}

bool DoWhoisLookup(String strDomain, String strServer, out String strResponse)
{
strResponse = "none";
bool bSuccess = false;

TCPClient tcpc = new TCPClient();
if (0 == tcpc.Connect(strServer, 43))
{
strDomain += "rn";
Byte[] arrDomain = Encoding.ASCII.GetBytes(strDomain.ToCharArray());
try
{
Stream s = tcpc.GetStream();
s.Write(arrDomain, 0, strDomain.Length);

StreamReader sr = new StreamReader(tcpc.GetStream(), Encoding.ASCII);
StringBuilder strBuilder = new StringBuilder();
while (-1 != sr.Peek())
{
strBuilder.Append(sr.ReadLine()+"<br");
}
tcpc.Close();

bSuccess = true;
strResponse = strBuilder.ToString();
}
catch(Exception e)
{
strResponse = e.ToString();
}

return bSuccess;
}
else
{
strResponse = "Could not connect to Whois server";
return false;
}

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com)

return false;
}
</script
<html
<head
<title</title
</head
<body

<form runat="server"
Domain name: WWW . <asp:TextBox id="txtDomain" value="" runat="server" /
<asp:Button id="btnQuery" OnClick="doQuery" text="Query!" runat="server" /
<BR<HR width="100%"<BR
<asp:label id="txtResult" runat="server" /
</form

</body
</html

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com)

from http://www.top888.net/zwcj/10-13/jc01.htm

来源:https://www.tulaoshi.com/n/20160129/1492424.html

延伸阅读
本示例是用于将ListView中的内容倒入到Excel,与常用的逐单元格写不同的是,本例子采用数据写入到range的方法。该方法效率明显较高。 Excel.Application app = new Excel.ApplicationClass(); if( app == null) { MessageBox.Show("Excel无法启动"); return; } app.Visible = true; Excel.Workbooks w...
简介: 框架是一种定制的通用的应用程序开发基础软件,在其基础上可以开发完整的关且功能完善的软件。在最近几年里,已经成功实现了某些应用领域的开发框架,比如说用户介面开发及数据访问开发等。如果能成功的开发出一个框架,这将是一个突破,因为这意味着开发将不再从头开始实现某个功能:比如一个框架如果可以成功的生成一个用户介...
//**********************Created by Chen************************** using System; using System.IO; using System.Text; using System.Net; using System.Net.Sockets; using System.Collections; using System.Collections.Specialized; using KSN.Exceptions; using KSN.Validate; namespace KSN.Web.Mail {  /// <summary  ...
木马的介绍 因为本文是探讨木马程序,所以在介绍之前有一些木马构成的基本知识事先说明。一个完整的木马系统由硬件部分,软件部分和具体连接部分组成。这里主要对软件部分介绍,它主要有控制端程序、木马程序(后台服务程序)、木马配制程序组成。控制端用以远程控制服务端的程序;木马程序是潜入服务端内部,获取其操作权限的程序;...
译序:C#进阶文章。译者对Samir提供的C#例子进行了简单整理(作者提供的某些代码在译者的环境中无法通过编译),并编写了对应的C++示例,一并置于译注中,以便读者比对。译文中所有C#、C++程序调试环境均为Microsoft Visual Studio.NET 7.0 Beta2。 概要:通过提供一个框架,设计模式可以解决应用开发中的许多问题。模式使得设计过程...

经验教程

270

收藏

35
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部