Lister les machines d'un reseau en win32...

ChrOnOs83 Messages postés 32 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 19 juin 2007 - 29 juin 2004 à 11:56
ChrOnOs83 Messages postés 32 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 19 juin 2007 - 8 juil. 2004 à 14:16
Bonjour à tous,
J'ai beau chercher comme un malade comment repertorier tout les postes d'un LAN, je ne trouve pas... du moin en win32.
Bref si quelqu'un pouvai m'aider je lui en serai trés reconaissant:-)
En gros se que je voudrai faire c envoyer en broadcast a un port bien defini une chaine de caractere...
bref merci d'avance pour toutes reponses !!!:-)
@+

5 réponses

cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 4
29 juin 2004 à 16:20
Salut,
NetServerEnum(...) te retourne le nom de chaque poste,
et gethostbyname(...) te donnera leur ip locale.
0
cs_Matt67 Messages postés 549 Date d'inscription samedi 6 septembre 2003 Statut Membre Dernière intervention 6 mars 2010 3
29 juin 2004 à 19:35
Bonsoir,

Et si tu choisis l'adresse "255.255.255.255", non ???

Matt...
0
ChrOnOs83 Messages postés 32 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 19 juin 2007
30 juin 2004 à 14:58
Je ne pense pas que l'on puisse se conecter en broadcast mais merci quand meme Matt67 :-)
Sinon merci bcp aardman ton aide m'a bien aidé!!!! :-D

Manque de chance je suis tombé sur un second probleme... :-S
En faite il me donne une liste cotenant seulement la 1er lettre de chaque nom de station. J'ai beau chercher j'arrive pas a trouver d'ou cela peut venir.

voici mon code :
int i;
char liste[200];
LPSERVER_INFO_100 buf;
DWORD LECTURE_ENTREE = 0;
DWORD TOTAL_MACHINE = 0;
NetServerEnum(0,100,(LPBYTE *) &buf,MAX_PREFERRED_LENGTH,&LECTURE_ENTREE,&TOTAL_MACHINE,SV_TYPE_ALL,0,0);
strcpy(liste,buf->sv100_name);
strcat(liste,"\n");
buf++;
for (i=1;i < TOTAL_MACHINE;i++)
{
strcat(liste,buf->sv100_name);
strcat(liste,"\n");
buf++;
        
}
MessageBox(0,liste,"",0);


Bref merci d'avance pour toute reponse !!!
@+
0
cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 4
30 juin 2004 à 15:11
Salut,
Le nom de la machine est déclarée en LPWSTR, c'est a dire en UNICODE.
WideCharToMultiByte(...) pour passer d'unicode en ascii.

Sinon, il ne faut pas oublier de désalouer la mémoire avec NetApiBufferFree(...).
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ChrOnOs83 Messages postés 32 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 19 juin 2007
8 juil. 2004 à 14:16
salut,
merci bcp d'avoir pris le temps de me repondre!!!
ca ma bien servi :-D
Bref bonne continuation et @+
0