Condividi tramite


Funzione IoQueryFullDriverPath (ntddk.h)

La routine IoQueryFullDriverPath recupera il nome completo del percorso del file binario caricato per l'oggetto driver specificato. A partire da Windows 10 versione 1709, i chiamanti possono eseguire una query per gli oggetti driver non proprietari, purché usino la sincronizzazione appropriata per garantire che la struttura DRIVER_OBJECT rimanga valida durante la chiamata.

Sintassi

NTSTATUS IoQueryFullDriverPath(
  [in]  PDRIVER_OBJECT  DriverObject,
  [out] PUNICODE_STRING FullPath
);

Parametri

[in] DriverObject

Puntatore a una struttura DRIVER_OBJECT . Se si chiama IoQueryFullDriverPath in un computer che esegue una versione di Windows 10 precedente alla versione 1709, questa struttura deve essere l'oggetto driver per il driver chiamante.

[out] FullPath

Puntatore a una struttura UNICODE_STRING allocata dal chiamante. In caso di esito positivo, questa struttura contiene il nome del percorso.

Valore restituito

IoQueryFullDriverPath restituisce STATUS_SUCCESS se la chiamata recupera correttamente il nome del percorso. I valori restituiti di errore possibili includono i codici di stato seguenti.

Codice restituito Descrizione
STATUS_ACCESS_DENIED L'oggetto driver di destinazione non appartiene al chiamante. Questo codice di stato viene restituito solo nelle versioni di Windows 10 precedenti alla 1709.
STATUS_NOT_FOUND All'oggetto driver non è associata alcuna sezione (immagine di memoria caricata).
STATUS_INSUFFICIENT_RESOURCES Sono disponibili risorse insufficienti per eseguire l'operazione richiesta.

Commenti

Un driver può chiamare questa routine per eseguire una query sul nome completo del percorso del file binario oppure, a partire da Windows 10 versione 1709, il nome completo del percorso del file binario per un altro driver.

Il chiamante alloca la struttura UNICODE_STRING a cui punta il parametro FullPath , ma non deve inizializzare questa struttura. IoQueryFullDriverPath presuppone che il contenuto originale di questa struttura non sia valido e li sovrascriva. Questa routine alloca un buffer stringa dalla memoria di sistema di paging, imposta il membro Buffer della struttura in modo che punti a questo buffer e imposta i membri MaximumLength e Buffer per descrivere il buffer e il relativo contenuto.

Il chiamante è responsabile della liberazione dello spazio di archiviazione a cui punta FullPath-Buffer> quando la stringa del percorso completo non è più necessaria. In genere, il chiamante libera questa risorsa di archiviazione chiamando una routine come ExFreePool.

Requisiti

Requisito Valore
Client minimo supportato Disponibile a partire da Windows 8.1.
Piattaforma di destinazione Universale
Intestazione ntddk.h (include Wdm.h, Ntddk.h, Ntifs.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Vedi anche

DRIVER_OBJECT

ExFreePool

UNICODE_STRING