Funzione PsLookupThreadByThreadId (ntifs.h)
La routine PsLookupThreadByThreadId accetta l'ID thread di un thread e restituisce un puntatore a cui si fa riferimento alla struttura ETHREAD del thread.
Sintassi
NTSTATUS PsLookupThreadByThreadId(
[in] HANDLE ThreadId,
[out] PETHREAD *Thread
);
Parametri
[in] ThreadId
Specifica l'ID thread del thread.
[out] Thread
Restituisce un puntatore a cui si fa riferimento alla struttura ETHREAD del thread specificato da ThreadId.
Valore restituito
PsLookupThreadByThreadId restituisce STATUS_SUCCESS in caso di esito positivo o di un valore NTSTATUS appropriato, ad esempio:
Codice restituito | Descrizione |
---|---|
|
L'ID del thread non è stato trovato. |
Commenti
Questa routine è disponibile in Windows 2000 e versioni successive.
Se la chiamata a PsLookupThreadByThreadId ha esito positivo, PsLookupThreadByThreadId aumenta il conteggio dei riferimenti sull'oggetto restituito nel parametro Thread . Di conseguenza, quando un driver è stato completato usando il parametro Thread , il driver deve chiamare ObDereferenceObject per dereferenziare il parametro Thread ricevuto dalla routine PsLookupThreadByThreadId .
La struttura ETHREAD è una struttura di dati opaca utilizzata internamente dal sistema operativo. Questa struttura può essere passata ad altre routine per accedere a informazioni specifiche in questa struttura.
Un driver di filtro del file system può enumerare i thread attivi chiamando PsLookupThreadByThreadId per convertire un ID thread in una struttura ETHREAD. L'ID del thread è disponibile nella routine di creazione del thread. Un driver di filtro del file system può impostare una routine di callback di notifica del thread usando PsSetCreateThreadNotifyRoutine. Nella routine di callback di notifica il driver di filtro del file system può usare il parametro ThreadId passato e chiamare PsLookupThreadByThreadId per individuare la struttura ETHREAD.
La routine PsLookupThreadByThreadId contiene codice di paging.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Intestazione | ntifs.h (include Ntifs.h) |
Libreria | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |
Vedi anche
PsRemoveCreateThreadNotifyRoutine
PsRemoveLoadImageNotifyRoutine