Visual Studio .NET 2002.NET 1.0Windows 2003.NET 1.1Windows 2000Windows XP中级开发Visual StudioWindows.NETC#
创建全局 Whois 类






3.90/5 (9投票s)
2003年12月7日
1分钟阅读

72593

1342
查询任何顶级域(TLD)
引言
我意识到 CodeProject 上已经有一个 C# 的 Whois 示例,它是一个 ASP.NET 代码片段。我在这里发布的类封装了比那个示例更多的功能,并且源自几年前我用 Perl 编写的一个脚本。
详细说明
Whois 类有一个主要方法,Lookup(domain)
。从这个方法开始,类会确定应该为域名查找使用哪个 whois 服务器。这是通过从 Perl 脚本中借鉴的一个技巧完成的,该服务由 whois-servers.net 提供,由 CenterGate 托管。通过对域名顶级域名(例如,mydomain.com 的 .com)执行 DNS 查找,附加到 .whois-servers.net,您可以获得该域的 whois 服务器地址(如果存在)。
我已经内置到类中,可以通过 WhoisServer 属性提供您自己的 whois 服务器。我还添加了对几个不提供免费 whois 服务器的域名以及 .tk 域名的检查,后者提供免费服务器,但不在 whois-servers.net 服务上。
该类执行查找,并在完成时引发一个事件,LookupComplete
,并传递一个 WhoisEventArgs
类,其中包含查找结果和使用的 whois 服务器。
要检查域名是否已被占用,取决于您 - 您需要解析 WhoisEventArgs
类中 WhoisInfo
属性提供的字符串。
示例项目是一个小型 Windows 窗体应用程序,用于演示如何使用该类。该类目前不处理无法解析的 whois 服务器,也许可以在这方面添加一些额外的错误处理代码。