Condividi tramite


Funzione RegReplaceKeyA (winreg.h)

Sostituisce il file che esegue il backup di una chiave del Registro di sistema e di tutte le relative sottochiavi con un altro file, in modo che al successivo avvio del sistema, la chiave e le sottochiavi avranno i valori archiviati nel nuovo file.

Le applicazioni che esegue il backup o il ripristino dello stato del sistema, inclusi i file di sistema e gli hive del Registro di sistema, devono usare il servizio copia shadow del volume anziché le funzioni del Registro di sistema.

Sintassi

LSTATUS RegReplaceKeyA(
  [in]           HKEY   hKey,
  [in, optional] LPCSTR lpSubKey,
  [in]           LPCSTR lpNewFile,
  [in]           LPCSTR lpOldFile
);

Parametri

[in] hKey

Handle per una chiave del Registro di sistema aperta. Questo handle viene restituito dalla funzione RegCreateKeyEx o RegOpenKeyEx oppure può essere una delle chiavi predefinite seguenti :

HKEY_CLASSES_ROOTHKEY_CURRENT_CONFIGHKEY_CURRENT_USERHKEY_LOCAL_MACHINEHKEY_USERS

[in, optional] lpSubKey

Nome della chiave del Registro di sistema le cui sottochiavi e valori devono essere sostituiti. Se la chiave esiste, deve essere una sottochiave della chiave identificata dal parametro hKey . Se la sottochiave non esiste, viene creata. Questo parametro può essere NULL.

Se la sottochiave specificata non è la radice di un hive, RegReplaceKey attraversa la struttura ad albero hive fino a quando non rileva una radice hive, sostituisce il contenuto di tale hive con il contenuto del file di dati specificato da lpNewFile.

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

[in] lpNewFile

Nome del file con le informazioni del Registro di sistema. Questo file viene in genere creato usando la funzione regSaveKey .

[in] lpOldFile

Nome del file che riceve una copia di backup delle informazioni del Registro di sistema da sostituire.

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 con il flag FORMAT_MESSAGE_FROM_SYSTEM per ottenere una descrizione generica dell'errore.

Osservazioni

Esistono due diversi formati di file Hive del Registro di sistema. Gli hive del Registro di sistema creati nei sistemi operativi correnti in genere non possono essere caricati da quelli precedenti.

Il file specificato dal parametro lpNewFile rimane aperto fino al riavvio del sistema.

Se hKey è un handle restituito da RegConnectRegistry, i percorsi specificati in lpNewFile e lpOldFile sono relativi al computer remoto.

Il processo chiamante deve disporre dei privilegi SE_RESTORE_NAME e SE_BACKUP_NAME nel computer in cui risiede il Registro di sistema. Per altre informazioni, vedere esecuzione con privilegi speciali.

Nota

L'intestazione winreg.h definisce RegReplaceKey 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

RegConnectRegistry

RegDeleteKey

RegLoadKey

RegRestoreKey

RegSaveKey

funzioni del Registro di sistema

Panoramica del Registro di sistema