Share via


CryptSetProviderA-Funktion (wincrypt.h)

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

Wenn der Standardanbieter eines aktuellen Benutzers festgelegt ist, wird dieser Standardanbieter durch jeden Aufruf dieses Benutzers von 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 CryptSetProviderA(
  [in] LPCSTR 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 durch pszProvName angegebenen CSP.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich null (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 ungültiger Zeiger.
ERROR_NOT_ENOUGH_MEMORY
Beim Betriebssystem ist während des Vorgangs nicht mehr genügend Arbeitsspeicher vorhanden.
 

Fehler können auch von internen Aufrufen von 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 des Benutzers 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 Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

   
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