Funzione IoGetDevicePropertyData (wdm.h)
La routine IoGetDevicePropertyData recupera l'impostazione corrente per una proprietà del dispositivo.
Sintassi
NTSTATUS IoGetDevicePropertyData(
[in] PDEVICE_OBJECT Pdo,
[in] const DEVPROPKEY *PropertyKey,
[in] LCID Lcid,
ULONG Flags,
[in] ULONG Size,
[out] PVOID Data,
[out] PULONG RequiredSize,
[out] PDEVPROPTYPE Type
);
Parametri
[in] Pdo
Puntatore all'oggetto dispositivo fisico (PDO) per il dispositivo su cui viene eseguita la query.
[in] PropertyKey
Puntatore a una struttura DEVPROPKEY che specifica la chiave della proprietà del dispositivo.
[in] Lcid
Identificatore delle impostazioni locali. Impostare questo parametro su un valore LCID specifico della lingua o su LOCALE_NEUTRAL. L'LOCALE_NEUTRAL LCID specifica che la proprietà è indipendente dalla lingua, ovvero non specifica di alcuna lingua. Non impostare questo parametro su LOCALE_SYSTEM_DEFAULT o LOCALE_USER_DEFAULT. Per altre informazioni sui valori LCID specifici della lingua, vedere Struttura LCID.
Flags
Riservato per l'utilizzo nel sistema. I driver devono impostare questo valore su 0.
[in] Size
Dimensione, in byte, del buffer a cui punta Data .
[out] Data
Puntatore ai dati della proprietà del dispositivo.
[out] RequiredSize
Puntatore a ULONG per ricevere le dimensioni delle informazioni sulle proprietà restituite in Data. Se IoGetDevicePropertyData restituisce STATUS_BUFFER_TOO_SMALL, il chiamante può usare questo valore per allocare un buffer delle dimensioni corrette.
[out] Type
Puntatore a un valore DEVPROPTYPE . Se IoGetDevicePropertyData viene completato correttamente, la routine usa Type per specificare il tipo di dati restituiti nel buffer dei dati .
Valore restituito
IoGetDevicePropertyData restituisce un valore NTSTATUS. Questa routine può restituire uno dei valori seguenti:
Codice restituito | Descrizione |
---|---|
|
Operazione completata. Il buffer dei dati contiene i dati recuperati. **Type* contiene il tipo dei dati recuperati. |
|
Il buffer dei dati è troppo piccolo. **RequiredSize* contiene la lunghezza del buffer necessaria. |
|
Impossibile trovare la proprietà del dispositivo specificata. |
Commenti
I driver in modalità kernel usano la routine IoGetDevicePropertyData per recuperare le proprietà del dispositivo definite come parte del modello di proprietà del dispositivo unificato.
Per visualizzare i tipi di proprietà disponibili per l'uso da parte di questa routine, vedere DEVPROP_TYPE_BYTE e pagine adiacenti per DEVPROP_TYPE_*
.
I driver possono usare la routine IoSetDevicePropertyData per modificare una proprietà del dispositivo.
I chiamanti di IoGetDevicePropertyData devono essere in esecuzione in IRQL <= APC_LEVEL nel contesto di un thread di sistema.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile a partire da Windows Vista. |
Piattaforma di destinazione | Universale |
Intestazione | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Libreria | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |
Regole di conformità DDI | HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm) |