Desea usar Ping para verificar si una PC está conectada a la LAN. He aquí una muestra:
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);
}
para comprobar si es el propietario de la máquina se conecta, se puede hacer lo mismo con una dirección que debe resolver sabe como decir que el controlador de dominio.
Por favor, vea http://stackoverflow.com/questions/314213/checking-network-status-in-c - si esto no responde a su pregunta completamente, es posible que desee edítelo para hacer la diferencia entre la pregunta # 1 y # 2 aparente ... – mdb