Funzione ZwDeleteValueKey (wdm.h)
La routine ZwDeleteValueKey elimina una voce di valore corrispondente a un nome da una chiave aperta nel Registro di sistema. Se non esiste alcuna voce di questo tipo, viene restituito un errore.
Sintassi
NTSYSAPI NTSTATUS ZwDeleteValueKey(
[in] HANDLE KeyHandle,
[in] PUNICODE_STRING ValueName
);
Parametri
[in] KeyHandle
Handle della chiave del Registro di sistema contenente la voce di valore di interesse. Questa chiave deve essere stata aperta con KEY_SET_VALUE impostata per l'accesso desiderato. Questo handle viene creato da una chiamata riuscita a ZwCreateKey o ZwOpenKey.
[in] ValueName
Puntatore a una struttura UNICODE_STRING contenente il nome della voce del valore da eliminare. Questo parametro può essere una stringa vuota se la voce del valore non ha alcun nome.
Valore restituito
ZwDeleteValueKey restituisce STATUS_SUCCESS o uno stato di errore appropriato che rappresenta lo stato di completamento finale dell'operazione. I codici di stato degli errori possibili includono quanto segue:
Codice restituito | Descrizione |
---|---|
STATUS_ACCESS_DENIED | L'handle KeyHandle non dispone dell'accesso KEY_SET_VALUE. |
STATUS_INSUFFICIENT_RESOURCES | Le risorse aggiuntive richieste da questa funzione non erano disponibili. |
STATUS_INVALID_HANDLE | Il parametro KeyHandle specificato è un puntatore NULL o non un puntatore valido a una chiave del Registro di sistema aperta. |
STATUS_OBJECT_NAME_NOT_FOUND | Non è stata trovata la voce della chiave del Registro di sistema ValueName . |
Commenti
KeyHandle passato a ZwDeleteValueKey deve essere stato aperto per l'eliminazione dell'accesso. I valori DesiredAccess di KEY_SET_VALUE, KEY_WRITE e KEY_ALL_ACCESS includono la maschera di accesso KEY_SET_VALUE necessaria per eliminare l'accesso. Per una descrizione dei valori possibili per DesiredAccess, vedere ZwCreateKey.
Se le funzioni di callback vengono registrate per questa chiave del Registro di sistema, queste funzioni di callback verranno chiamate.
I driver di dispositivo non devono tentare di chiamare ZwDeleteValueKey direttamente per eliminare le voci di valore in una sottochiave di \Registry.. \ResourceMap chiave. Solo il sistema può scrivere o eliminare voci di valore in \Registry.. \Albero HardwareDescription .
Se la chiamata a questa funzione si verifica in modalità utente, è necessario usare il nome "NtDeleteValueKey" anziché "ZwDeleteValueKey".
Per le chiamate dai driver in modalità kernel, le versioni NtXxx e ZwXxx di una routine di Windows Native System Services possono comportarsi in modo diverso nel modo in cui gestiscono e interpretano i parametri di input. Per altre informazioni sulla relazione tra le versioni NtXxx e ZwXxx di una routine, vedere Uso di nt e zw versioni delle routine di Servizi di sistema nativo.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Intestazione | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h, Fltkernel.h) |
Libreria | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Regole di conformità DDI | HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm) |
Vedi anche
Uso di nt e zw versioni delle routine di Servizi di sistema nativo