una para instalar configurar conexion conectarse conectar computadoras compartir como archivos c# windows lan workgroup

c# - para - conectar computadoras en red wifi



En C#, ¿cómo obtengo la lista de nombres de computadoras locales como la que se obtiene al ver la red en Windows Explorer? (4)

Hay muchas preguntas sobre cómo obtener el nombre y las direcciones IP de la máquina local y varias sobre cómo obtener direcciones IP de otras máquinas en la LAN (no todas respondieron correctamente). Esto es diferente.

En Windows Explorer, si selecciono Network en la barra lateral, obtengo una vista de las máquinas locales en mi LAN listadas por nombre de máquina (en un grupo de trabajo de Windows, de todos modos). ¿Cómo obtengo la misma información programáticamente en C #?


Puede intentar usar el espacio de nombres System.DirectoryServices .

var root = new DirectoryEntry("WinNT:"); foreach (var dom in root.Children) { foreach (var entry in dom.Children) { if (entry.Name != "Schema") { Console.WriteLine(entry.Name); } } }


public List<String> ListNetworkComputers() { List<String> _ComputerNames = new List<String>(); String _ComputerSchema = "Computer"; System.DirectoryServices.DirectoryEntry _WinNTDirectoryEntries = new System.DirectoryServices.DirectoryEntry("WinNT:"); foreach (System.DirectoryServices.DirectoryEntry _AvailDomains in _WinNTDirectoryEntries.Children) { foreach (System.DirectoryServices.DirectoryEntry _PCNameEntry in _AvailDomains.Children) { if (_PCNameEntry.SchemaClassName.ToLower().Contains(_ComputerSchema.ToLower())) { _ComputerNames.Add(_PCNameEntry.Name); } } } return _ComputerNames; }



Necesita transmitir una solicitud ARP para todas las direcciones IP dentro de un rango determinado. Comience por definir la IP base en su red y luego establezca un identificador superior.

Iba a escribir algunos ejemplos de código, etc. pero parece que alguien ha cubierto esto exhaustivamente aquí;

Pregunta de ARP