Funzione SHRegWriteUSValueA (shlwapi.h)
Scrive un valore in una sottochiave del Registro di sistema in un sottoalbero specifico dell'utente (HKEY_CURRENT_USER o HKEY_LOCAL_MACHINE).
Sintassi
LSTATUS SHRegWriteUSValueA(
[in] HUSKEY hUSKey,
[in] LPCSTR pszValue,
[in] DWORD dwType,
[in] const void *pvData,
[in] DWORD cbData,
[in] DWORD dwFlags
);
Parametri
[in] hUSKey
Tipo: HUSKEY
Handle per una sottochiave del Registro di sistema attualmente aperta. La sottochiave deve essere stata aperta con il diritto di accesso KEY_SET_VALUE. Per altre informazioni, vedere sicurezza delle chiavi del Registro di sistema e diritti di accesso.
Questo handle può essere ottenuto tramite la funzione SHRegOpenUSKey
[in] pszValue
Tipo: LPCTSTR
Puntatore a una stringa con terminazione Null che specifica il nome del valore. Questo valore è una voce nella sottochiave specificata da hUSKey. Se un valore con questo nome non è già presente nella sottochiave, verrà aggiunto.
Se questo parametro è NULL o una stringa vuota, la funzione imposta il tipo e i dati per il valore predefinito della sottochiave.
[in] dwType
Tipo: DWORD
Tipo di dati da archiviare nel valore specificato da pszValue. Uno dei tipi di valore del Registro di sistema seguenti definiti in Winnt.h e Wdm.h.
REG_NONE (0x00000000)
REG_SZ (0x00000001)
REG_EXPAND_SZ (0x00000002)
REG_BINARY (0x00000003)
REG_DWORD (0x00000004)
REG_DWORD_LITTLE_ENDIAN (0x00000004)
REG_DWORD_BIG_ENDIAN (0x00000005)
REG_LINK (0x00000006)
REG_MULTI_SZ (0x00000007)
REG_RESOURCE_LIST (0x00000008)
REG_FULL_RESOURCE_DESCRIPTOR (0x00000009)
REG_RESOURCE_REQUIREMENTS_LIST (0x0000000A)
REG_QWORD (0x0000000B)
REG_QWORD_LITTLE_ENDIAN (0x0000000B)
[in] pvData
Tipo: const void*
Puntatore ai dati da impostare per il valore specificato da pszValue. Per i tipi basati su stringhe, ad esempio REG_SZ, la stringa deve essere con terminazione Null. Con il tipo di dati REG_MULTI_SZ, la stringa deve essere terminata con due caratteri Null. Una barra rovesciata in un percorso deve essere preceduta da un'altra barra rovesciata come carattere di escape. Ad esempio, specificare "C:\mydir\myfile" per archiviare la stringa "C:\mydir\myfile".
[in] cbData
Tipo: DWORD
Dimensioni, in byte, dei dati a cui punta il parametro pvData
[in] dwFlags
Tipo: DWORD
Flag che indicano il sottoalbero in cui devono essere scritti i dati. Uno o più dei valori seguenti:
SHREGSET_HKCU (0x00000001)
Scrivere in HKEY_CURRENT_USER solo se un valore del nome specificato in pszValue non esiste attualmente nella sottochiave specificata.
SHREGSET_FORCE_HKCU (0x00000002)
Scrivere in HKEY_CURRENT_USER. Se esiste già un valore del nome specificato in pszValue esiste già, verrà sovrascritto.
SHREGSET_HKLM (0x00000004)
Scrivere in HKEY_LOCAL_MACHINE solo se un valore del nome specificato in pszValue non esiste attualmente nella sottochiave specificata.
SHREGSET_FORCE_HKLM (0x00000008)
Scrivere in HKEY_LOCAL_MACHINE. Se esiste già un valore del nome specificato in pszValue esiste già, verrà sovrascritto.
SHREGSET_DEFAULT (0x00000006)
Equivalente a (SHREGSET_FORCE_HKCU | SHREGSET_HKLM).
Valore restituito
Tipo: LSTATUS
Restituisce ERROR_SUCCESS se ha esito positivo; in caso contrario, un codice di errore diverso da zero definito in Winerror.h. È possibile usare la funzione FormatMessage
Osservazioni
Per usare SHRegWriteUSValue, è prima necessario aprire la chiave con SHRegOpenUSKey. Una volta aperta la chiave, è possibile usare SHRegWriteUSValue quante volte necessario.
Se è sufficiente scrivere un singolo valore, è consigliabile usare SHRegSetUSValue, che apre la chiave e scrive il valore.
Se è necessario scrivere più valori sulla stessa chiave, più chiamate a SHRegWriteUSValue sono in genere più efficienti di SHRegSetUSValue, perché la chiave viene aperta una sola volta.
Nota
L'intestazione shlwapi.h definisce SHRegWriteUSValue 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, Windows XP [solo app desktop] |
server minimo supportato | Windows 2000 Server [solo app desktop] |
piattaforma di destinazione | Finestre |
intestazione |
shlwapi.h |
libreria |
Shlwapi.lib |
dll | Shlwapi.dll (versione 4.71 o successiva) |