2009-08-02 8 views

Répondre

12

Appelez GetModuleFileNameEx. Disponible en de Windows 2000.

DWORD WINAPI GetModuleFileNameEx(
    __in  HANDLE hProcess, 
    __in_opt HMODULE hModule, 
    __out  LPTSTR lpFilename, 
    __in  DWORD nSize 
); 

Utilisez NULL pour le second paramètre pour obtenir le nom du fichier EXE.

+0

Merci, c'est exactement ce dont j'avais besoin. – user145586

+2

cela fonctionne uniquement avec un processus 32 bits pour les processus 32 bits, dans l'autre cas, vous obtiendrez une erreur. Si vous ne voulez pas le faire, faites le avec GetProcessImageFileName – Quonux

9

Le GetProcessImageFileName function récupère le nom du fichier exécutable pour le descripteur de processus spécifié (WinXP, Server 2k3 ou version ultérieure), tout comme QueryFullProcessImageName pour Vista et 2k8 ou version ultérieure.

+0

** La fonction 'GetProcessImageFileName' renvoie le chemin dans le formulaire de périphérique, plutôt que des lettres de lecteur. ** - c'est méchant. 'GetModuleFileNameEx' est le bon chemin :) – CodeAngry

Questions connexes