C# 检查电脑是否连接到局域网上
我想问两个问题,如果有人能回答,我将不胜感激C# 检查电脑是否连接到局域网上,c#,.net,networking,C#,.net,Networking,我想问两个问题,如果有人能回答,我将不胜感激 如何(使用C#)检查电脑是否连接到局域网 如何检查(使用C#)我的电脑是否已连接到局域网 使用System.Net.NetworkInformation命名空间的ping功能。有关更多信息,请参阅您想使用Ping检查PC是否连接到LAN。以下是一个示例: var ping = new Ping(); var options = new PingOptions { DontFragment = true }; //just need some dat
使用
System.Net.NetworkInformation
命名空间的ping功能。有关更多信息,请参阅您想使用Ping检查PC是否连接到LAN。以下是一个示例:
var ping = new Ping();
var options = new PingOptions { DontFragment = true };
//just need some data. this sends 10 bytes.
var buffer = Encoding.ASCII.GetBytes( new string( 'z', 10 ) );
var host = "127.0.0.1";
try
{
var reply = ping.Send( host, 60, buffer, options );
if ( reply == null )
{
MessageBox.Show( "Reply was null" );
return;
}
if ( reply.Status == IPStatus.Success )
{
MessageBox.Show( "Ping was successful." );
}
else
{
MessageBox.Show( "Ping failed." );
}
}
catch ( Exception ex )
{
MessageBox.Show( ex.Message );
}
要检查您自己的计算机是否已连接,您可以对您知道应该解析的地址执行相同的操作,例如域控制器。试试看
System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable()
请看--如果这不能完全回答您的问题,您可能希望对其进行编辑,使问题1和问题2之间的区别变得明显…@Thomas即使我将lan电缆从PC中移除,此代码仍能成功发送ping。这是因为我仅出于说明目的使用了127.0.0.1。你需要用网络上的一个IP来替换这个IP,比如说域控制器。它不是应该说,如果你有任何网络连接吗?