- 热门文章:
- · 使用.NET访问 Internet(1) Paul_Ni(原作)
- · 如何取得动态装载的WEB CONTROL的属性值?
- · POP3 Client as a C# Class(转自CodeProject)
- · 饼图的一种画法(转载自aspcool)
- · 精品:Asp3.0中email有效性验证
- · 使用Div加速页面的显示(原创)
- · Creating DataGrid Templated Columns Dynamically - Part I(转自Dotnettips)
- · 关于asp.net的代码重用
- · Getting Datagrid Columns Keypress,Keyup, Keydown and other events to Fire(一个很好的东西)
- · runat=server
- · 关于上下文(Context)/2(转MS)
- · 关于上下文(Context)/1(转MS)
修改后的Whois查询程序
<% @Import Namespace="System.Net" %>
<% @Import Namespace="System.Net.Sockets" %>
<% @Import Namespace="System.Text" %>
<% @Import Namespace="System.IO" %>
<% @Import Namespace="System.Collections" %>
<html>
<head>
<title>Whois查询</title>
<LINK href="../inc/main.css" type="text/css" rel="stylesheet">
<script language="C#" runat="server">
void doQuery(Object sender, EventArgs e)
{
String strDomain;
String strServer;
//strServer = "whois.paycenter.com.cn";
//新网的Whois,联接查询速度较快,但不是在新网注册的域名可能无法显示详细资料
strServer = "66.150.5.140"; //whois.uwhois.com
if(txtDomain2.Checked)
{ strDomain = txtDomain1.Text+txtDomain2.Text; }
else
{
if(txtDomain3.Checked)
{ strDomain = txtDomain1.Text+txtDomain3.Text; }
else
{
if(txtDomain4.Checked)
{ strDomain = txtDomain1.Text+txtDomain4.Text; }
else
{
if(txtDomain5.Checked)
{ strDomain = txtDomain1.Text+txtDomain5.Text; }
else
{ strDomain = txtDomain1.Text+txtDomain6.Text; }
}
}
}
String strResponse;
bool bSuccess = DoWhoisLookup(strDomain, strServer, out strResponse);
if (bSuccess)
{
txtResult.Text = strResponse;
}
else
{
txtResult.Text = "查询失败!请重试。";
}
}
bool DoWhoisLookup(String strDomain, String strServer, out String strResponse)
{
strResponse = "none";
bool bSuccess = false;
TcpClient tcpc = new TcpClient();
tcpc.Connect(strServer, 43);
strDomain += "\r\n";
Byte[] arrDomain = Encoding.UTF8.GetBytes(strDomain.ToCharArray());
try
{
Stream s = tcpc.GetStream();
s.Write(arrDomain, 0, strDomain.Length);
StreamReader sr = new StreamReader(tcpc.GetStream(), Encoding.UTF8);
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;
}
</script>
</head>
<body>
<form runat="server">
域名: www.<asp:TextBox id="txtDomain1" value="" runat="server" />
<asp:RadioButton id="txtDomain2" GroupName="RadioGroup1" text=".com" checked="True" runat="server" />
<asp:RadioButton id="txtDomain3" GroupName="RadioGroup1" text=".net" runat="server" />
<asp:RadioButton id="txtDomain4" GroupName="RadioGroup1" text=".org" runat="server" />
<asp:RadioButton id="txtDomain5" GroupName="RadioGroup1" text=".biz" runat="server" />
<asp:RadioButton id="txtDomain6" GroupName="RadioGroup1" text=".cc" runat="server" />
<asp:Button id="btnQuery" OnClick="doQuery" text="查询" runat="server" />
<BR><HR width="100%"><BR>
<asp:label id="txtResult" ForeColor="#0000FF" class="body" runat="server" />
</form>
</body>
</html>
相关文章:
- · 在.NET中使用静态变量来代替Application变量
- · ASP.NET窗体对话框的实现
- · 用.NET创建定时缓存
- · 将Session值储存于SQL Server中
- · ASP.NET中的事务处理和异常处理
- · ASP.NET Caching /2
- · 嘿,懒鬼!!其实MSDN阐述得真得不错哎,不知道你从哪来的资料
- · ASP.NET Caching /1
- · 绝对酷,如何解决asp.net中javascript脚本的问题(使用服务器控件执行客户端脚本)
- · 最佳ASP.NET编程习惯
- · 一次同时上传多个文件
- · 在datagrid中求和(vb.net,c#)
- · ASP.NET中利用SQLXML WEB服务访问XML数据(转)
- · 在DataGrid中经弹出窗口确认后执行操作(删除)。(附在DataGrid中修改,添加记录)详见代码!!
- · 在datagrid中放入一个DropDownList(忘了这个问题在那里看到的了CSDN or There)
- · 简单的动态加载用户控件的方法
- · 关于如何 确认删除的另外一个办法。
- · 掉掉注意了,如何动态加载用户控件(ascx)
- · 给大家一个新的加密方法,C#的。(国外的,只用于学习,支持中文)
- · TO feixr,DataGrid中的Radiobutton
- · 微软.NET战略和ASP.NET简介(1)
- · 微软.NET战略和ASP.NET简介(3)
- · 微软.NET战略和ASP.NET简介(2)
- · 验证控件介绍--RegularExpressionValidator
- · 验证控件介绍--RangeValidator
- · 验证控件介绍--CompareValidator
- · 验证控件介绍--RequiredFieldValidator
- · 解决分页的例子。使用DataSet绑定到DataList实现的。数据库使用我刚才贴的这个。
- · 配置Config.web
- · WebRequest Class
- · asp.net中使用静态变量
- · 利用HttpRequest登录到某个网站,然后获取网站信息的程序示例 [原创]
- · Creating DataGrid Templated Columns Dynamically - Part II(转自DotNetTips)
- · 用ASP.NET写你自己的代码生成器(2)。
- · 用ASP.NET写你自己的代码生成器(3)。
- · mark新官上任,转贴一个DataGrid(增加删除确认和新增记录功能),道贺:)
- · 一个datagrid 删除确认例子
- · 关于ASP.Net不能启动调试的官方解答
