Port com enum

Description

Exemple comme promis sur forum.

ComPorts.c est prêt à l'emploi.

Source / Exemple :


#define MEMDISPO  (MEM_RESERVE | MEM_COMMIT | MEM_TOP_DOWN)
#define QUATREKO  4096

/*  RAPPEL USAGE DE: DWORD bnEnumPortsCom(char *pdata, DWORD lendata)
  Remplit pdata en tableau de chaines ("COM1\0COM2\0"), 1 seul 0 final !!!
  Retour DWORD dira combien de chaines.
  Si lendata < 5 retournera 0 A TOUT COUP !!!

  • /
void __stdcall OnEnumComs(HWND hlst, int bAll) { char *pmem, *c; DWORD r; SendMessage(hlst, LB_RESETCONTENT, 0, 0); pmem = (char*) VirtualAlloc(0, QUATREKO, MEMDISPO, PAGE_READWRITE); if(!pmem) return; if(bAll) r = bnEnumAllCom(pmem, QUATREKO); else r = bnEnumPortsCom(pmem, QUATREKO); if(!r) goto relMEM; c = pmem; do { SendMessage(hlst, LB_ADDSTRING, 0, (long) c); if(--r == 0) break; // ENUMERATION FINIE while(*c) c++; // VA SUR ZERO FINAL DE FIN DE CHAINE c++; // PASSE ZERO FINAL, VA SUR PROCHAINE CHAINE } while(1); relMEM: VirtualFree(pmem, 0, MEM_RELEASE); }

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.