Freigeben über


InternetErrorDlg-Funktion (wininet.h)

Zeigt ein Dialogfeld für den Fehler an, der an InternetErrorDlg übergeben wird, sofern ein entsprechendes Dialogfeld vorhanden ist. Wenn das flag FLAGS_ERROR_UI_FILTER_FOR_ERRORS verwendet wird, überprüft die Funktion auch die Header auf ausgeblendete Fehler und zeigt bei Bedarf ein Dialogfeld an.

Syntax

DWORD InternetErrorDlg(
  [in]      HWND      hWnd,
  [in, out] HINTERNET hRequest,
  [in]      DWORD     dwError,
  [in]      DWORD     dwFlags,
  [in, out] LPVOID    *lppvData
);

Parameter

[in] hWnd

Handle zum übergeordneten Fenster für alle erforderlichen Dialogfelder. Wenn kein Dialogfeld erforderlich ist und FLAGS_ERROR_UI_FLAGS_NO_UI an dwFlags übergeben wird, kann dieser Parameter NULL sein.

[in, out] hRequest

Handle für die Internetverbindung, die beim Aufruf von HttpSendRequest verwendet wird.

[in] dwError

Fehlerwert, für den ein Dialogfeld angezeigt werden soll. Dieser Parameter kann einen der folgenden Werte annehmen.

Wert Bedeutung
ERROR_HTTP_REDIRECT_NEEDS_CONFIRMATION
Ermöglicht dem Benutzer, die Umleitung zu bestätigen.
ERROR_INTERNET_BAD_AUTO_PROXY_SCRIPT
Zeigt ein Dialogfeld an, das angibt, dass das automatische Proxyskript ungültig ist.
ERROR_INTERNET_CHG_POST_IS_NON_SECURE
Zeigt ein Dialogfeld an, in dem der Benutzer gefragt wird, ob die angegebenen Daten in einem nicht sicheren Kanal bereitgestellt werden sollen.
ERROR_INTERNET_CLIENT_AUTH_CERT_NEEDED
Der Server fordert ein Clientzertifikat an.

Der Rückgabewert für diesen Fehler ist immer ERROR_SUCCESS, unabhängig davon, ob der Benutzer ein Zertifikat ausgewählt hat. Wenn der Benutzer kein Zertifikat ausgewählt hat, wird bei der nachfolgenden Anforderung die anonyme Clientauthentifizierung versucht.

ERROR_INTERNET_HTTP_TO_HTTPS_ON_REDIR
Benachrichtigt den Benutzer über die Zonenüberquerung an einen sicheren Standort.
ERROR_INTERNET_HTTPS_TO_HTTP_ON_REDIR
Benachrichtigt den Benutzer über die Zonenüberquerung von einem sicheren Standort aus.
ERROR_INTERNET_HTTPS_HTTP_SUBMIT_REDIR
Benachrichtigt den Benutzer, dass die bereitgestellten Daten jetzt an eine nicht sichere Website umgeleitet werden.
ERROR_INTERNET_INCORRECT_PASSWORD
Zeigt ein Dialogfeld an, in dem der Name und das Kennwort des Benutzers angefordert werden.
ERROR_INTERNET_INVALID_CA
Gibt an, dass der allgemeine Name des SSL-Zertifikats (Hostnamenfeld) falsch ist. Zeigt ein Dialogfeld Ungültiger allgemeiner SSL-Name an, und der Benutzer kann das falsche Zertifikat anzeigen.
ERROR_INTERNET_MIXED_SECURITY
Zeigt dem Benutzer eine Warnung zu gemischten sicheren und nicht sicheren Inhalten an.
ERROR_INTERNET_POST_IS_NON_SECURE
Zeigt ein Dialogfeld an, in dem der Benutzer gefragt wird, ob die angegebenen Daten in einem nicht sicheren Kanal bereitgestellt werden sollen.
ERROR_INTERNET_SEC_CERT_CN_INVALID
Gibt an, dass der allgemeine Name des SSL-Zertifikats (Hostnamenfeld) falsch ist. Zeigt ein Dialogfeld Ungültiger allgemeiner SSL-Name an, und der Benutzer kann das falsche Zertifikat anzeigen. Ermöglicht dem Benutzer auch die Auswahl eines Zertifikats als Reaktion auf eine Serveranforderung.
ERROR_INTERNET_SEC_CERT_ERRORS
Zeigt dem Benutzer eine Warnung an, die die Probleme mit dem Serverzertifikat anzeigt.
ERROR_INTERNET_SEC_CERT_DATE_INVALID
Teilt dem Benutzer mit, dass das SSL-Zertifikat abgelaufen ist.
ERROR_INTERNET_SEC_CERT_REV_FAILED
Zeigt dem Benutzer eine Warnung an, die zeigt, dass die Sperrprüfung des Serverzertifikats fehlgeschlagen ist.
ERROR_INTERNET_SEC_CERT_REVOKED
Zeigt ein Dialogfeld an, das angibt, dass das Serverzertifikat widerrufen wurde.
ERROR_INTERNET_UNABLE_TO_DOWNLOAD_SCRIPT
Zeigt ein Dialogfeld an, das angibt, dass das Skript für den automatischen Proxy nicht heruntergeladen werden konnte.

[in] dwFlags

Aktionen Dieser Parameter kann einen oder mehrere der folgenden Werte aufweisen.

Wert Bedeutung
FLAGS_ERROR_UI_FILTER_FOR_ERRORS
Überprüft die zurückgegebenen Header auf Fehler. Rufen Sie InternetErrorDlg auf, wobei dieses Flag nach einem Aufruf von HttpSendRequest festgelegt ist, um ausgeblendete Fehler zu erkennen. Authentifizierungsfehler werden z. B. normalerweise ausgeblendet, weil der Aufruf von HttpSendRequest erfolgreich abgeschlossen wird. Durch das Überprüfen der status Codes kann InternetErrorDlg jedoch feststellen, dass der Proxy oder Server eine Authentifizierung erfordert.
FLAGS_ERROR_UI_FLAGS_CHANGE_OPTIONS
Wenn die Funktion erfolgreich ist, werden die Ergebnisse des Dialogfelds im Internethandle gespeichert.
FLAGS_ERROR_UI_FLAGS_GENERATE_DATA
Fragt das Internethandle nach erforderlichen Informationen ab. Die -Funktion erstellt die entsprechende Datenstruktur für den Fehler. (Bei Zertifikat-CN-Fehlern greift die Funktion beispielsweise auf das Zertifikat.)
FLAGS_ERROR_UI_SERIALIZE_DIALOGS
Serialisiert Authentifizierungsdialogfelder für gleichzeitige Anforderungen für einen Kennwortcacheeintrag. Der lppvData-Parameter sollte die Adresse eines Zeigers auf eine INTERNET_AUTH_NOTIFY_DATA-Struktur enthalten, und der Client sollte eine threadsichere, nicht blockierende Rückruffunktion implementieren.
FLAGS_ERROR_UI_FLAGS_NO_UI
Ermöglicht dem Aufrufer, NULL ohne Fehler an den hWnd-Parameter zu übergeben. Wird in Situationen verwendet, in denen keine Benutzeroberfläche erforderlich ist.

[in, out] lppvData

Zeiger auf die Adresse einer Datenstruktur. Die Struktur kann für jeden Fehler, der behandelt werden muss, unterschiedlich sein.

Rückgabewert

Gibt einen der folgenden Werte oder andernfalls einen Fehlerwert zurück.

Rückgabecode Beschreibung
ERROR_SUCCESS
Die Funktion wurde erfolgreich abgeschlossen.

Weitere Informationen finden Sie unter ERROR_INTERNET_CLIENT_AUTH_CERT_NEEDED im dwError-Parameter .

ERROR_CANCELLED
Die Funktion wurde vom Benutzer abgebrochen.
ERROR_INTERNET_FORCE_RETRY
Dies gibt an, dass die Funktion ihre Anforderung wiederholen muss. Bei der Authentifizierung bedeutet dies, dass der Benutzer auf die Schaltfläche OK geklickt hat.
ERROR_INVALID_HANDLE
Das Handle für das übergeordnete Fenster ist ungültig.

Hinweise

Informieren Sie den Benutzer immer, wenn eines der folgenden Ereignisse eintritt:

  • ERROR_INTERNET_HTTP_TO_HTTPS_ON_REDIR
  • ERROR_INTERNET_INVALID_CA
  • ERROR_INTERNET_POST_IS_NON_SECURE
  • ERROR_INTERNET_SEC_CERT_CN_INVALID
  • ERROR_INTERNET_SEC_CERT_DATE_INVALID
Sofern sich der Benutzer nicht explizit entschieden hat, nicht über diese Ereignisse informiert zu werden, wird der Benutzer unfreiwillig einem erheblichen Sicherheitsrisiko ausgesetzt.

Wie alle anderen Aspekte der WinINet-API kann diese Funktion nicht sicher innerhalb von DllMain oder den Konstruktoren und Destruktoren globaler Objekte aufgerufen werden.

Hinweis WinINet unterstützt keine Serverimplementierungen. Darüber hinaus sollte es nicht von einem Dienst aus verwendet werden. Verwenden Sie für Serverimplementierungen oder Dienste Microsoft Windows HTTP Services (WinHTTP).
 

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile wininet.h
Bibliothek Wininet.lib
DLL Wininet.dll

Weitere Informationen

Aktivieren der Internetfunktionalität

WinINet-Funktionen