WinHttpSetCredentials-Funktion (winhttp.h)
Die WinHttpSetCredentials-Funktion übergibt die erforderlichen Autorisierungsanmeldeinformationen an den Server.
Syntax
WINHTTPAPI BOOL WinHttpSetCredentials(
[in] HINTERNET hRequest,
[in] DWORD AuthTargets,
[in] DWORD AuthScheme,
[in] LPCWSTR pwszUserName,
[in] LPCWSTR pwszPassword,
[in] LPVOID pAuthParams
);
Parameter
[in] hRequest
Gültiges HINTERNET-Handle, das von WinHttpOpenRequest zurückgegeben wird.
[in] AuthTargets
Eine ganze Zahl ohne Vorzeichen, die ein Flag angibt, das das Authentifizierungsziel enthält. Dies kann einer der Werte in der folgenden Tabelle sein.
Wert | Bedeutung |
---|---|
|
Anmeldeinformationen werden an einen Server übergeben. |
|
Anmeldeinformationen werden an einen Proxy übergeben. |
[in] AuthScheme
Eine ganze Zahl ohne Vorzeichen, die ein Flag angibt, das das Authentifizierungsschema enthält. Muss eines der unterstützten Authentifizierungsschemas sein, das von WinHttpQueryAuthSchemes zurückgegeben wird. In der folgenden Tabelle werden die möglichen Werte angegeben.
[in] pwszUserName
Zeiger auf eine Zeichenfolge, die einen gültigen Benutzernamen enthält.
[in] pwszPassword
Zeiger auf eine Zeichenfolge, die ein gültiges Kennwort enthält. Das Kennwort kann leer sein.
[in] pAuthParams
Dieser Parameter ist reserviert und muss NULL sein.
Rückgabewert
Gibt TRUE zurück, wenn erfolgreich, andernfalls FALSE . Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen zu erhalten. In der folgenden Tabelle sind die zurückgegebenen Fehlercodes aufgeführt.
Fehlercode | BESCHREIBUNG |
---|---|
|
Der angeforderte Vorgang kann nicht ausgeführt werden, da sich das angegebene Handle nicht im richtigen Zustand befindet. |
|
Der Typ des angegebenen Handles ist für diesen Vorgang falsch. |
|
Ein interner Fehler ist aufgetreten. |
|
Es war nicht genügend Arbeitsspeicher verfügbar, um den angeforderten Vorgang abzuschließen (Windows-Fehlercode). |
Hinweise
Auch wenn WinHTTP im asynchronen Modus verwendet wird (d. h. wenn WINHTTP_FLAG_ASYNC in WinHttpOpen festgelegt wurde), wird diese Funktion synchron ausgeführt. Der Rückgabewert gibt Erfolg oder Fehler an. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Die von WinHttpSetCredentials festgelegten Anmeldeinformationen werden nur für eine einzelne Anforderung verwendet. WinHTTP speichert diese Anmeldeinformationen nicht für die Verwendung in nachfolgenden Anforderungen. Daher müssen Anwendungen geschrieben werden, damit sie auf mehrere Herausforderungen reagieren können. Wenn eine authentifizierte Verbindung wieder verwendet wird, können nachfolgende Anforderungen nicht abgefragt werden, aber Ihr Code sollte jederzeit auf eine Herausforderung reagieren können.
Beispielcode, der die Verwendung von WinHttpSetCredentials veranschaulicht, finden Sie unter Authentifizierung in WinHTTP.
Anforderungen
Unterstützte Mindestversion (Client) | Windows XP, Windows 2000 Professional mit SP3 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003, Windows 2000 Server mit SP3 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | winhttp.h |
Bibliothek | Winhttp.lib |
DLL | Winhttp.dll |
Verteilbare Komponente | WinHTTP 5.0 und Internet Explorer 5.01 oder höher unter Windows XP und Windows 2000. |