Share via


CryptSetProviderExA-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 CryptSetProviderEx-Funktion gibt den Standard-Kryptografiedienstanbieter (CSP) eines angegebenen Anbietertyps für den lokalen Computer oder aktuellen Benutzer an.
Hinweis Typische Anwendungen verwenden diese Funktion nicht. Es ist ausschließlich für die Verwendung durch Administrative Anwendungen vorgesehen.
 

Syntax

BOOL CryptSetProviderExA(
  [in] LPCSTR pszProvName,
  [in] DWORD  dwProvType,
  [in] DWORD  *pdwReserved,
  [in] DWORD  dwFlags
);

Parameter

[in] pszProvName

Der Name des neuen Standard-CSP. Hierbei muss es sich um einen auf dem Computer installierten CSP handeln. Eine Liste der verfügbaren Kryptografieanbieter finden Sie unter Namen von Kryptografieanbietern.

[in] dwProvType

Der Anbietertyp des von pszProvName angegebenen CSP.

[in] pdwReserved

Dieser Parameter ist für die zukünftige Verwendung reserviert und muss NULL sein.

[in] dwFlags

Die folgenden Flagwerte werden definiert.

Wert Bedeutung
CRYPT_DELETE_DEFAULT
0x00000004
Kann in Verbindung mit CRYPT_MACHINE_DEFAULT oder CRYPT_USER_DEFAULT verwendet werden, um die Standardeinstellung zu löschen.
CRYPT_USER_DEFAULT
0x00000002
Bewirkt, dass der Standard-CSP für den Benutzerkontext des angegebenen Typs festgelegt wird.
CRYPT_MACHINE_DEFAULT
0x00000001
Bewirkt, dass der Standard-CSP des angegebenen Typs für den Computer festgelegt wird.

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. Mögliche Fehlercodes sind die in der folgenden Tabelle gezeigten.

Rückgabecode Beschreibung
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
Auf dem Betriebssystem ist der Arbeitsspeicher nicht mehr vorhanden.

Hinweise

Die meisten Anwendungen geben beim Aufrufen der CryptAcquireContext-Funktion keinen CSP-Namen an. Eine Anwendung kann jedoch einen CSP-Namen angeben und dadurch einen CSP mit einem entsprechenden Sicherheitsniveau auswählen. Da Aufrufe von CryptSetProviderEx den CSP eines angegebenen Typs bestimmen, der von allen Anwendungen ab diesem Zeitpunkt verwendet wird, darf CryptSetProviderEx niemals ohne die Zustimmung eines Benutzers aufgerufen werden.

Hinweis

Der wincrypt.h-Header definiert CryptSetProviderEx 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

CryptSetProvider

Dienstanbieterfunktionen