Bonjour tout le monde,
Je veux obtenir un Token sur le processus "explorer.exe" et j'ai un problème avec la fonction 'OpenProcessToken' de l'API Windows/C++, elle échoue à tous les coups
Elle retourne toujours 0, et le GetLastError() retourne le code d'erreur 998, qui selon les gens de msdn signifie ERROR_NOACCESS.
Pour plus de précisions:
1) le compte utilisateur que j'utilise est un compte Administrateur local( pas sur un domaine AD)
2) système d'exploitation Vista
voici le code de mon programme:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 int _tmain(int argc, _TCHAR* argv[]) { DWORD processID=GetPidByName("explorer.exe"); //GetPidByName : cette fonction permet de récupérer l'ID du processus, elle marche nickel et je l'ai testé printf("PID = %ld\n", processID); HANDLE hExplorerProcess = OpenProcess( PROCESS_QUERY_INFORMATION , FALSE, processID ); PHANDLE TokenHandle=NULL; BOOL b=OpenProcessToken(hExplorerProcess, TOKEN_READ, TokenHandle); DWORD d=GetLastError(); system("pause>nul"); return 0; }
Merci pour tout type d'aide![]()
Partager