Enfin, j'ai le temps d'apprendre quelque chose de nouveau.
L'amélioration de l'ASP est trop grande.
Il y en a plus. Eh bien, parlons moins de bêtises, regardez le code source.
<% @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 (expéditeur d'objet, EventArgs e)
{{
String StrongoMain = txtDomain.Text;
char [] chsplit = {'.'};
String [] arrduin = stromain.split (chsplit);
int nlenth = arrDomain [1] .length;
Table de hashtable = 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;
// Si la fin du DomainName est CN, le serveur est CNNIC, sinon est Networksolutions
if (Arrdomain [Arrdomain.length -1] == "CN")
{{
strServer = "159.226.6.139";
}
autre
{{
strserver = "whois.networksolutions.com";
}
if (Table.ContainsKey (Arrdomain [1]))
{{
strServer = table [arromain] [1]].
}
else if (nLength == 2)
{{
// LTTER TLD est toujours par défaut à mûr en Europe
strserver = "whois.ripe.net";
}
String strResponse;
Bool bsuccess = dowhoislookup (stromain, strServer, out strresponse);
if (bsuccess)
{{
txTResult.Text = strResponse;
}
autre
{{
txtreult.text = "La recherche a échoué";
}
}
Bool dowhoislokup (string stromain, string strserver, out String strresponse)
{{
sttrresponse = "aucun";
Bool bsuccess = false;
tcpClient tcpc = new tcpClient ();
if (0 == TCPC.Connect (StrServer, 43))
{{
stromain + = "/ r / n";
BYTE [] Arrdomain = Encoding.ascii.getBytes (stromain.tocharray ());
essayer
{{
Stream S = tcpc.getStream ();
S.Write (Arrdomain, 0, stromain.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 ();
}
Retour bsuccess;
}
autre
{{
Strresponse = "ne pouvait pas se connecter au serveur Whois";
Retourne false;
}
Retourne false;
}
</cript>
<html>
<adal>
<Title> </Title>
</ head>
<body>
<Form runat = "server">
Nom de domaine: www.
<asp: bouton id = "btnQuery" onclick = "doquery" text = "requête!"
<br> <hr> <br>
<asp: étiquette id = "txTresult" runat = "server" />
</ form>
</docy>
</html>