Share via


CryptSetProviderW-Funktion (wincrypt.h)

Wichtig Diese API ist veraltet. Neue und vorhandene Software sollten mit der Verwendung von Kryptografie-APIs der nächsten Generation beginnen. Microsoft kann diese API in zukünftigen Releases entfernen.
 
Die CryptSetProvider-Funktion gibt den Kryptografiedienstanbieter (CSP) des aktuellen Benutzers an.

Wenn der Standardanbieter eines aktuellen Benutzers festgelegt ist, wird dieser Standardanbieter durch jeden Aufruf dieses Benutzers an CryptAcquireContext abgerufen, der einen dwProvType-Anbietertyp , aber keinen CSP-Namen angibt.

Eine erweiterte Version dieser Funktion, CryptSetProviderEx, ist ebenfalls verfügbar.

Hinweis Typische Anwendungen verwenden diese Funktion nicht. Es ist ausschließlich für die Verwendung durch administrative Anwendungen vorgesehen.
 

Syntax

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

Parameter

[in] pszProvName

Name des neuen Standard-CSP. Der benannte CSP muss auf dem Computer installiert sein. Eine Liste der verfügbaren Kryptografieanbieter finden Sie unter Namen von Kryptografieanbietern.

[in] dwProvType

Anbietertyp des von pszProvName angegebenen CSP.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert nonzero (TRUE).

Wenn die Funktion fehlschlägt, ist der Rückgabewert 0 (FALSE). Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen zu erhalten. Einige mögliche Fehlercodes sind in der folgenden Tabelle aufgeführt.

Rückgabecode Beschreibung
ERROR_INVALID_HANDLE
Einer der Parameter gibt ein ungültiges Handle an.
ERROR_INVALID_PARAMETER
Einer der Parameter enthält einen ungültigen Wert. Dies ist in den meisten Fällen ein nicht gültiger Zeiger.
ERROR_NOT_ENOUGH_MEMORY
Während des Vorgangs ging dem Betriebssystem der Arbeitsspeicher aus.
 

Fehler können auch von internen Aufrufen an RegCreateKeyEx und RegSetValueEx weitergegeben werden.

Hinweise

Typische Anwendungen geben beim Aufrufen von CryptAcquireContext keinen CSP-Namen an. eine Anwendung hat jedoch die Möglichkeit, einen bestimmten CSP auszuwählen. Dies gibt einem Benutzer die Freiheit, einen CSP mit einem angemessenen Sicherheitsniveau auszuwählen.

Da der Aufruf von CryptSetProvider den CSP eines angegebenen Typs bestimmt, der von allen Anwendungen verwendet wird, die ab diesem Zeitpunkt ausgeführt werden, darf diese Funktion nicht ohne zustimmung der Benutzer aufgerufen werden.

Hinweis

Der wincrypt.h-Header definiert CryptSetProvider als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile wincrypt.h
Bibliothek Advapi32.lib
DLL Advapi32.dll

Weitere Informationen

CryptAcquireContext

Namen des kryptografischen Anbieters

RegCreateKeyEx

RegSetValueEx

Dienstanbieterfunktionen