Funzione RegDeleteKeyExA (winreg.h)
Elimina una sottochiave e i relativi valori dalla visualizzazione specifica della piattaforma specificata del Registro di sistema. Si noti che i nomi delle chiavi non fanno distinzione tra maiuscole e minuscole.
Per eliminare una sottochiave come operazione transazionata, chiamare la funzione
Sintassi
LSTATUS RegDeleteKeyExA(
[in] HKEY hKey,
[in] LPCSTR lpSubKey,
[in] REGSAM samDesired,
DWORD Reserved
);
Parametri
[in] hKey
Handle per una chiave del Registro di sistema aperta. I diritti di accesso di questa chiave non influiscono sull'operazione di eliminazione. Per altre informazioni sui diritti di accesso, vedere sicurezza delle chiavi del Registro di sistema e diritti di accesso.
Questo handle viene restituito dalla funzione RegCreateKeyEx
- HKEY_CLASSES_ROOT
- HKEY_CURRENT_CONFIG
- HKEY_CURRENT_USER
- HKEY_LOCAL_MACHINE
- HKEY_USERS
[in] lpSubKey
Nome della chiave da eliminare. Questa chiave deve essere una sottochiave della chiave specificata dal valore del parametro hKey.
La funzione apre la sottochiave con il diritto di accesso DELETE.
I nomi delle chiavi non fanno distinzione tra maiuscole e minuscole.
Il valore di questo parametro non può essere NULL.
[in] samDesired
Maschera di accesso che specifica la visualizzazione specifica della piattaforma del Registro di sistema.
Reserved
Questo parametro è riservato e deve essere zero.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è ERROR_SUCCESS.
Se la funzione ha esito negativo, il valore restituito è un codice di errore diverso da zero definito in Winerror.h. È possibile usare la funzione FormatMessage
Osservazioni
Una chiave eliminata non viene rimossa fino alla chiusura dell'ultimo handle.
In WOW64 le applicazioni a 32 bit visualizzano un albero del Registro di sistema separato dall'albero del Registro di sistema visualizzato dalle applicazioni a 64 bit. Questa funzione consente a un'applicazione di eliminare una voce nella visualizzazione alternativa del Registro di sistema.
La sottochiave da eliminare non deve contenere sottochiavi. Per eliminare una chiave e tutte le relative sottochiavi, è necessario enumerare le sottochiavi ed eliminarle singolarmente. Per eliminare le chiavi in modo ricorsivo, usare la funzione RegDeleteTree
Se la funzione ha esito positivo, RegDeleteKeyEx rimuove la chiave specificata dal Registro di sistema. L'intera chiave, inclusi tutti i relativi valori, viene rimossa.
Nota
Nelle versioni legacy di Windows, questa API viene esposta anche da kernel32.dll.
Nota
L'intestazione winreg.h definisce RegDeleteKeyEx come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows Vista, Windows XP Professional x64 Edition [solo app desktop] |
server minimo supportato | Windows Server 2008, Windows Server 2003 con SP1 [solo app desktop] |
piattaforma di destinazione | Finestre |
intestazione |
winreg.h (include Windows.h) |
libreria |
Advapi32.lib |
dll | Advapi32.dll |