Ligne comande processus avec hwnd fenetre

unrealgun Messages postés 87 Date d'inscription mardi 16 décembre 2003 Statut Membre Dernière intervention 4 mars 2008 - 2 janv. 2006 à 21:18
ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 - 10 janv. 2006 à 21:46
Bonjour,
Je voudrais savoir comment obtenir le handle, la ligne de commande, le nom d'exe et le ID du processus correspondant a une fenetre dont j'ai le handle.

Merci d'avance.

9 réponses

vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
2 janv. 2006 à 21:42
-L'ID du processus: dwID = GetWindowThreadProcessId
-Le handle: HANDLE hproc = OpenProcess(.., dwID);
-La ligne de commande: j'ai pas compris ce que tu entends pas la
-Le nom de l'exe: GetModuleFileName(hproc, ...)
0
unrealgun Messages postés 87 Date d'inscription mardi 16 décembre 2003 Statut Membre Dernière intervention 4 mars 2008
2 janv. 2006 à 22:10
bein la ligne de commande ce serait, par exemple, pour le process d'une fenetre de regerdit, ce serait :

"C:\windows\system32\regedit.exe" -k -s etc...
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
2 janv. 2006 à 22:14
Pour les paramètres, GetCommandLine
0
unrealgun Messages postés 87 Date d'inscription mardi 16 décembre 2003 Statut Membre Dernière intervention 4 mars 2008
2 janv. 2006 à 22:23
GetCommandLine renvoie la ligne de commande du processus courant et n'a pas de parametres. Il faudrait une fonction avec, en param, le handle du process et qui renvoie la ligne de commande de ce process.
0

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

Posez votre question
unrealgun Messages postés 87 Date d'inscription mardi 16 décembre 2003 Statut Membre Dernière intervention 4 mars 2008
2 janv. 2006 à 22:24
c'est bon , j'ai trouvé, GetModuleFileNameEx, je vais l'essayer.
0
unrealgun Messages postés 87 Date d'inscription mardi 16 décembre 2003 Statut Membre Dernière intervention 4 mars 2008
2 janv. 2006 à 22:37
ok, pour le exename, c'est bon mais là il me manque toujours les parametres, et je trouve pas de fonction car getcommandline renvoie pour le processus courant.
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
2 janv. 2006 à 22:38
GetModuleFileNameEx ne donnera pas les paramètres non plus
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
2 janv. 2006 à 23:55
Il faut injecter du code dans le processus cible pour lire sa ligne de commande, voir Richter pour exemple.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0
ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 26
10 janv. 2006 à 21:46
salut,



la ligne de commande est stockée sous NT dans le PEB (process
environment block)...on peut le lire avec OpenProcess et
ReadProcessMemory...j'ai un code qui fait ca mais en VB6...

ShareVB
0
Rejoignez-nous