Funzione RegDeleteKeyTransactedA (winreg.h)
Elimina una sottochiave e i relativi valori dalla vista specifica della piattaforma specificata del Registro di sistema come operazione transazionata. Si noti che i nomi delle chiavi non fanno distinzione tra maiuscole e minuscole.
Sintassi
LSTATUS RegDeleteKeyTransactedA(
[in] HKEY hKey,
[in] LPCSTR lpSubKey,
[in] REGSAM samDesired,
DWORD Reserved,
[in] HANDLE hTransaction,
PVOID pExtendedParameter
);
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, RegCreateKeyTransacted, RegOpenKeyEx o RegOpenKeyTransacted . Può anche essere una delle chiavi predefinite seguenti:
- 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.
[in] hTransaction
Handle per una transazione attiva. Questo handle viene restituito dalla funzione CreateTransaction .
pExtendedParameter
Questo parametro è riservato e deve essere NULL.
Valore restituito
Se la funzione ha esito positivo, il valore restituito viene 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 con il flag FORMAT_MESSAGE_FROM_SYSTEM per ottenere una descrizione generica dell'errore.
Commenti
Una chiave eliminata non viene rimossa finché non viene chiuso l'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 del Registro di sistema alternativa.
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 .
Se la funzione ha esito positivo, RegDeleteKeyTransacted rimuove la chiave specificata dal Registro di sistema. L'intera chiave, inclusi tutti i relativi valori, viene rimossa. Per rimuovere l'intero albero come operazione transazionata, usare la funzione RegDeleteTree con un handle restituito da RegCreateKeyTransacted o RegOpenKeyTransacted.
Nota
L'intestazione winreg.h definisce RegDeleteKeyTransacted 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 che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.
Requisiti
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | winreg.h (include Windows.h) |
Libreria | Advapi32.lib |
DLL | Advapi32.dll |