2010-08-16 17 views

Respuesta

53

algo a tener en cuenta es que System.Environment.MachineName; y System.Windows.Forms.SystemInformation.ComputerName; le dará el nombre de NetBIOS de la máquina (restringido a 15 caracteres)

Si desea que el nombre de host completo basado en TCP/IP puede utilizar Dns.GetHostName():

string hostName = System.Net.Dns.GetHostName(); 

O puede utilizar:

System.Environment.GetEnvironmentVariable("COMPUTERNAME"); 

que devolverá el nombre completo del equipo establecido durante la instalación.

+3

Bueno, los documentos son un poco imprecisos sobre cómo se implementa, pero implica que se requiere a) una conexión de red que funcione, b) un viaje de ida y vuelta al DNS servidor, yc) que el DNS realmente conoce el nombre de su máquina (no tiene que ser así, a menos que sea un servidor) –

+0

@James Curran - Absolutamente. Pero Environment.MachineName restringe el nombre de la computadora a un nombre de NETBIOS de 15 caracteres. GetHostName recuperará el nombre de host completo basado en TCP/IP. – GenericTypeTea

+2

'System.Environment.GetEnvironmentVariable (" COMPUTERNAME ");' es Windows solamente – gman

18

Si no me equivoco en lo que quiere hacer ..

System.Environment.MachineName 
2
System.Windows.Forms.SystemInformation.ComputerName; 
2

El espacio de nombres My contiene muchos grandes funciones "ayudantes" como:

My.Computer.Name 
+6

Esto parece estar limitado a VB.NET y es propiedad de ese lenguaje: http://msdn.microsoft.com/en-us/vstudio/ms789188.aspx –

4

Para conseguir el nombre completo, el uso:

System.Net.Dns.GetHostEntry("").HostName 
Cuestiones relacionadas