Funzione GetCurrentProcess (processthreadsapi.h)
Recupera uno pseudo handle per il processo corrente.
Sintassi
HANDLE GetCurrentProcess();
Valore restituito
Il valore restituito è uno pseudo handle per il processo corrente.
Commenti
Uno pseudo handle è una costante speciale, attualmente (HANDLE)-1, interpretata come handle di processo corrente. Per compatibilità con i sistemi operativi futuri, è consigliabile chiamare GetCurrentProcess invece di impostare come hardcoded questo valore costante. Il processo chiamante può usare uno pseudo handle per specificare il proprio processo ogni volta che è necessario un handle di processo. Gli pseudo handle non vengono ereditati dai processi figlio.
Questo handle ha il diritto di accesso PROCESS_ALL_ACCESS all'oggetto processo. Per altre informazioni, vedere Sicurezza dei processi e diritti di accesso.
Windows Server 2003 e Windows XP: Questo handle ha l'accesso massimo consentito dal descrittore di sicurezza del processo al token primario del processo.
Un processo può creare un handle "reale" a se stesso valido nel contesto di altri processi o che può essere ereditato da altri processi, specificando lo pseudo handle come handle di origine in una chiamata alla funzione DuplicateHandle . Un processo può anche usare la funzione OpenProcess per aprire un handle reale a se stesso.
Lo pseudo handle non deve essere chiuso quando non è più necessario. La chiamata alla funzione CloseHandle con uno pseudo handle non ha alcun effetto. Se lo pseudo handle viene duplicato da DuplicateHandle, l'handle duplicato deve essere chiuso.
Esempio
Per un esempio, vedere Creazione di un processo figlio con input e output reindirizzati.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP [app desktop | App UWP] |
Server minimo supportato | Windows Server 2003 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | processthreadsapi.h (include Windows.h in Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2) |
Libreria | Kernel32.lib |
DLL | Kernel32.dll |