He estado luchando para encontrar la "descripción" de la computadora en la que se ejecuta mi aplicación Java.¿Cómo puedo encontrar mi "descripción de la computadora" en una aplicación Java en Windows y/o Mac?
Lo que busco es el nombre que se usa para DNS al anunciar mi computadora en la red local ("iMac Mattijs" en las capturas de pantalla a continuación).
En Windows XP, este nombre se puede encontrar aquí: Panel de control -> Sistema -> Nombre del equipo -> Descripción de la computadora.
En Mac OS 10.6, este nombre se puede encontrar aquí: Preferencias del sistema -> Compartir -> Nombre de equipo
Los métodos a continuación no entregan el nombre I Estoy buscando. Echar un vistazo a este código:
System.out.println("COMPUTERNAME environment variable: " + System.getenv("COMPUTERNAME"));
try { System.out.println("localhost name: " + InetAddress.getLocalHost().getHostName()); }
catch (UnknownHostException e1) {}
try {
Enumeration<NetworkInterface> interfaces = NetworkInterface.getNetworkInterfaces();
while (interfaces.hasMoreElements()) {
NetworkInterface thisInterface = interfaces.nextElement();
Enumeration<InetAddress> addresses = thisInterface.getInetAddresses();
System.out.println("* network interface: " + thisInterface.getDisplayName());
while (addresses.hasMoreElements()) {
InetAddress address = addresses.nextElement();
System.out.println(" - address: " + address.getCanonicalHostName());
}
}
} catch (SocketException e) {}
En Windows, esta impresiones:
COMPUTERNAME environment variable: ARTTECH-51CA5F5
localhost name: arttech-51ca5f5
* network interface: MS TCP Loopback interface
- address: localhost
* network interface: NVIDIA nForce Networking Controller - Packet Scheduler Miniport
* network interface: Broadcom 802.11n Network Adapter - Packet Scheduler Miniport
- address: arttech-51ca5f5.lan
* network interface: Bluetooth Device (Personal Area Network)
En Mac, me sale:
COMPUTERNAME environment variable: null
localhost name: imac-mattijs.lan
* network interface: en1
- address: imac-mattijs.lan
- address: imac-mattijs.local
* network interface: lo0
- address: localhost
- address: fe80:0:0:0:0:0:0:1%1
- address: localhost
pero estoy en busca de la cadena completa "iMac Mattijs ".
¡Cualquier pista sería bienvenida!
Gracias, Mattijs
"Descripción" no debería tener nada que ver con DNS –
Hola Matt, este "Descripción PC" (Windows)/"Nombre de equipo "(Mac OS) es lo que veo cuando encuentro mi computadora en la red local. Aparentemente, este nombre ingresado manualmente es anunciado por Bonjour/DNSSD, ¿no crees? – Mattijs
Esto parece ser específico de la plataforma, por lo que tendrá que recuperar el nombre de la computadora que desea de forma diferente para cada plataforma que desea admitir en su aplicación Java. – Bernard