Ce petit bout de code permet la récupération de l'adresse mac des cartes réseau d'un PC et également l'adresse IP, le masque sous réseau et le nom du device.
Pour ce qui est de l'adresse IP, du masque et du nom je sais qu'il est possible de les récupérer en java pure, mais il est plus facile de le gérer dans le code CPP afin de lier plus simplement l'adresse MAC et le reste des informations.
Le zip est composé de 2 projets :
1 - Le projet java (NetworkDevices) fait sous eclipse 3.3
2 - Le projet CPP (NetDevices) pour Linux(gcc 4.1.2) & windows (Visual Studio 6)
Note :
Pour windows il faut avoir le SDK de windows à cause de la dépendance à iphlpapi.h et iphlpapi.lib
afin de compiler correctement les codes C++ merci de bien renseigner le chemin des includes situés dans le répertoire d'installation du jdk (pour windows : également de renseigner les includes et lib du sdk de windows).
Cette source nécessite le jdk 1.5 ou supérieur (pour le main).
Le code JNI montre également comment invoquer, initialiser un objet Java depuis un code C/C++, il montre également comment retourner un tableau d'objet Java depuis un code C/C++.