Question triviale: Qui suis-je ?

[Résolu]
Signaler
Messages postés
107
Date d'inscription
lundi 7 février 2011
Statut
Membre
Dernière intervention
17 février 2018
-
Messages postés
107
Date d'inscription
lundi 7 février 2011
Statut
Membre
Dernière intervention
17 février 2018
-
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

Messages postés
276
Date d'inscription
lundi 8 septembre 2008
Statut
Membre
Dernière intervention
15 avril 2013
2
Bonjour,

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

char szPath[256];
GetModuleFileName(NULL,szPath,sizeof(szPath));
Messages postés
107
Date d'inscription
lundi 7 février 2011
Statut
Membre
Dernière intervention
17 février 2018

Merci, je viens de tester c'est parfait !