Funzione CryptSetProviderW (wincrypt.h)

Importante Questa API è deprecata. Il software nuovo ed esistente deve iniziare a usare le API cryptography next generation. Microsoft potrebbe rimuovere questa API nelle versioni future.
 
La funzione CryptSetProvider specifica il provider di servizi di crittografia (CSP) predefinito dell'utente corrente.

Se il provider predefinito di un utente corrente è impostato, tale provider predefinito viene acquisito da qualsiasi chiamata da tale utente a CryptAcquireContext specificando un tipo di provider dwProvType ma non un nome CSP.

È disponibile anche una versione avanzata di questa funzione , CryptSetProviderEx.

Nota Le applicazioni tipiche non usano questa funzione. È destinato esclusivamente alle applicazioni amministrative.
 

Sintassi

BOOL CryptSetProviderW(
  [in] LPCWSTR pszProvName,
  [in] DWORD   dwProvType
);

Parametri

[in] pszProvName

Nome del nuovo provider di servizi di configurazione predefinito. Il CSP denominato deve essere installato nel computer. Per un elenco dei provider di crittografia disponibili, vedere Cryptographic Provider Names.For a list of available cryptographic providers providers, see Cryptographic Provider Names.

[in] dwProvType

Tipo di provider del provider specificato da pszProvName.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero (TRUE).

Se la funzione ha esito negativo, il valore restituito è zero (FALSE). Per informazioni sugli errori estesi, chiamare GetLastError. Nella tabella seguente sono elencati alcuni codici di errore possibili.

Codice restituito Descrizione
ERROR_INVALID_HANDLE
Uno dei parametri specifica un handle non valido.
ERROR_INVALID_PARAMETER
Uno dei parametri contiene un valore non valido. Si tratta più spesso di un puntatore che non è valido.
ERROR_NOT_ENOUGH_MEMORY
Il sistema operativo ha esaurito la memoria durante l'operazione.
 

Gli errori possono anche essere propagati dalle chiamate interne a RegCreateKeyEx e RegSetValueEx.

Commenti

Le applicazioni tipiche non specificano un nome CSP quando si chiama CryptAcquireContext; Tuttavia, un'applicazione ha la possibilità di selezionare un provider di servizi di configurazione specifico. Ciò consente all'utente di selezionare un provider di servizi di configurazione con un livello di sicurezza appropriato.

Poiché la chiamata a CryptSetProvider determina il CSP di un tipo specificato usato da tutte le applicazioni eseguite da quel punto in poi, questa funzione non deve essere chiamata senza il consenso degli utenti.

Nota

L'intestazione wincrypt.h definisce CryptSetProvider 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

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione wincrypt.h
Libreria Advapi32.lib
DLL Advapi32.dll

Vedi anche

Cryptacquirecontext

Nomi dei provider di crittografia

RegCreateKeyEx

Regsetvalueex

Funzioni del provider di servizi