Question triviale: Qui suis-je ?

Résolu
ArthurAuguste Messages postés 107 Date d'inscription lundi 7 février 2011 Statut Membre Dernière intervention 17 février 2018 - 11 mars 2011 à 15:16
ArthurAuguste Messages postés 107 Date d'inscription lundi 7 février 2011 Statut Membre Dernière intervention 17 février 2018 - 11 mars 2011 à 16:03
Bonjour,
Trivial certainement pour un non débutant !
J'écris un petit programme en C++ qui utilise l'API 32 sous Windows XP, il commence donc par:
int APIENTRY WinMain( HINSTANCE W_n0inst, HINSTANCE W_n0precinst, LPTSTR W_CmdLine, int W_cdeaffich)
qui se contente ensuite de créer une fenêtre par:
clefenetre = CreateWindow (nomclassefenetre, titrefenetre, WS_CAPTION | WS_OVERLAPPEDWINDOW, 50, 50, 640, 470, NULL, NULL, n0instance, NULL);
rien de plus ordinaire donc.
Sauf qu'à un certain point du programme je voudrais savoir qui je suis, c'est à dire le nom du programme qui est entrain de s'exécuter ainsi que son chemin d'accès sur le disque ! (choses que moi je sais évidemment, mais que je voudrais retrouver par programmation)
Depuis ce matin, je parcours les fonctions de l'API32 et je n'ai toujours pas trouvé quelle est ou quelles sont la ou les fonctions qui peuvent me donner ces deux infos.
Merci pour votre aide.

2 réponses

ed73 Messages postés 276 Date d'inscription lundi 8 septembre 2008 Statut Membre Dernière intervention 15 avril 2013 2
11 mars 2011 à 15:38
Bonjour,

Pour le nom de l'exécutable avec son chemin tu peux utiliser GetModuleFileName :

char szPath[256];
GetModuleFileName(NULL,szPath,sizeof(szPath));
3
ArthurAuguste Messages postés 107 Date d'inscription lundi 7 février 2011 Statut Membre Dernière intervention 17 février 2018
11 mars 2011 à 16:03
Merci, je viens de tester c'est parfait !
0
Rejoignez-nous