Condividi tramite


Funzione RegDeleteKeyA (winreg.h)

Elimina una sottochiave e i relativi valori. Si noti che i nomi delle chiavi non fanno distinzione tra maiuscole e minuscole.

Windows a 64 bit: 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. Per consentire a un'applicazione di eliminare una voce nella visualizzazione del Registro di sistema alternativa, usare la funzione regDeleteKeyEx .

Sintassi

LSTATUS RegDeleteKeyA(
  [in] HKEY   hKey,
  [in] LPCSTR lpSubKey
);

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 o RegOpenKeyEx oppure può essere una dellechiavi predefinite seguenti:

HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS

[in] lpSubKey

Nome della chiave da eliminare. Deve essere una sottochiave della chiave identificata hKey, ma non può avere sottochiavi. Questo parametro non può essere NULL.

La funzione apre la sottochiave con il diritto di accesso DELETE.

I nomi delle chiavi non fanno distinzione tra maiuscole e minuscole.

Per altre informazioni, vedere Limiti delle dimensioni degli elementi del Registro di sistema .

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. Per ottenere una descrizione generica dell'errore, è possibile usare la funzione FormatMessage con il flag FORMAT_MESSAGE_FROM_SYSTEM.

Osservazioni

Una chiave eliminata non viene rimossa fino alla chiusura dell'ultimo handle.

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 o SHDeleteKey.

Esempi

Per un esempio che usa questa funzione, vedere Eliminazione di una chiave con sottochiavi.

Nota

Nelle versioni legacy di Windows, questa API viene esposta anche da kernel32.dll.

Nota

L'intestazione winreg.h definisce RegDeleteKey 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 2000 Professional [solo app desktop]
server minimo supportato Windows 2000 Server [solo app desktop]
piattaforma di destinazione Finestre
intestazione winreg.h (include Windows.h)
libreria Advapi32.lib
dll Advapi32.dll

Vedere anche

RegCloseKey

RegCreateKeyEx

RegDeleteTree

RegOpenKeyEx

funzioni del Registro di sistema

Panoramica del Registro di sistema

SHDeleteEmptyKey

SHDeleteKey