通过套接字连接到另一台计算机(我已经成功了,耶我)需要输入主机的IP地址,我的教授认为这"不方便使用"。
我以前的程序涉及到使用服务器,现在不再需要由于套接字连接的东西。我当时使用的代码是列出网络名称,这是我的教授非常喜欢的。
NetworkBrowser nb = new NetworkBrowser();
foreach (string pc in nb.getNetworkComputers())
{
lstNet.Items.Add(pc);
}
当用户选择网络上的计算机名时,是否有可能使用该代码,并让程序检索IP地址(如果可能的话,是IPv4) ?这将在任何套接字连接之前完成。
或者如果失败/不可能,我如何在列表框中列出计算机的IP地址?我真的不知道如何实现我一直听说的ARPing。
不幸的是,我的学校只运行。net 2.0,所以我恐怕我唯一的选择是c# Windows窗体,没有WCF或任何东西。
非常感谢所有回答的人
您可以执行DNS请求来获取IP地址:
IPAddress[] addresslist = Dns.GetHostAddresses(pc);
foreach (IPAddress address in addresslist)
{
Console.WriteLine(address.ToString());
}
您必须包含System.Net
(在。net 2.0中可用)