Condividi tramite


Funzione InternetErrorDlg (wininet.h)

Visualizza una finestra di dialogo per l'errore passato a InternetErrorDlg, se esiste una finestra di dialogo appropriata. Se viene usato il flag FLAGS_ERROR_UI_FILTER_FOR_ERRORS , la funzione controlla anche le intestazioni per eventuali errori nascosti e visualizza una finestra di dialogo se necessario.

Sintassi

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

Parametri

[in] hWnd

Gestire la finestra padre per qualsiasi finestra di dialogo necessaria. Se non è necessaria alcuna finestra di dialogo e FLAGS_ERROR_UI_FLAGS_NO_UI viene passato a dwFlags, questo parametro può essere NULL.

[in, out] hRequest

Gestire la connessione Internet usata nella chiamata a HttpSendRequest.

[in] dwError

Valore di errore per il quale visualizzare una finestra di dialogo. Questo parametro può avere uno dei valori seguenti.

Valore Significato
ERROR_HTTP_REDIRECT_NEEDS_CONFIRMATION
Consente all'utente di confermare il reindirizzamento.
ERROR_INTERNET_BAD_AUTO_PROXY_SCRIPT
Visualizza una finestra di dialogo che indica che lo script proxy automatico non è valido.
ERROR_INTERNET_CHG_POST_IS_NON_SECURE
Visualizza una finestra di dialogo che chiede all'utente se pubblicare i dati specificati in un canale non sicuro.
ERROR_INTERNET_CLIENT_AUTH_CERT_NEEDED
Il server richiede un certificato client.

Il valore restituito per questo errore è sempre ERROR_SUCCESS, indipendentemente dal fatto che l'utente abbia selezionato un certificato. Se l'utente non ha selezionato un certificato, l'autenticazione client anonima verrà tentata nella richiesta successiva.

ERROR_INTERNET_HTTP_TO_HTTPS_ON_REDIR
Notifica all'utente dell'attraversamento della zona in un sito sicuro.
ERROR_INTERNET_HTTPS_TO_HTTP_ON_REDIR
Notifica all'utente dell'attraversamento della zona da un sito sicuro.
ERROR_INTERNET_HTTPS_HTTP_SUBMIT_REDIR
Notifica all'utente che i dati pubblicati vengono ora reindirizzati a un sito non sicuro.
ERROR_INTERNET_INCORRECT_PASSWORD
Visualizza una finestra di dialogo che richiede il nome e la password dell'utente.
ERROR_INTERNET_INVALID_CA
Indica che il nome comune del certificato SSL (campo nome host) non è corretto. Visualizza una finestra di dialogo Nome comune SSL non valido e consente all'utente di visualizzare il certificato non corretto.
ERROR_INTERNET_MIXED_SECURITY
Visualizza un avviso all'utente relativo al contenuto sicuro e non sicuro misto.
ERROR_INTERNET_POST_IS_NON_SECURE
Visualizza una finestra di dialogo che chiede all'utente se pubblicare i dati specificati in un canale non sicuro.
ERROR_INTERNET_SEC_CERT_CN_INVALID
Indica che il nome comune del certificato SSL (campo nome host) non è corretto. Visualizza una finestra di dialogo Nome comune SSL non valido e consente all'utente di visualizzare il certificato non corretto. Consente inoltre all'utente di selezionare un certificato in risposta a una richiesta del server.
ERROR_INTERNET_SEC_CERT_ERRORS
Visualizza un avviso all'utente che mostra i problemi relativi al certificato del server.
ERROR_INTERNET_SEC_CERT_DATE_INVALID
Indica all'utente che il certificato SSL è scaduto.
ERROR_INTERNET_SEC_CERT_REV_FAILED
Visualizza un avviso all'utente che mostra che il controllo di revoca del certificato del server non è riuscito.
ERROR_INTERNET_SEC_CERT_REVOKED
Visualizza una finestra di dialogo che indica che il certificato del server viene revocato.
ERROR_INTERNET_UNABLE_TO_DOWNLOAD_SCRIPT
Visualizza una finestra di dialogo che indica che non è stato possibile scaricare lo script proxy automatico.

[in] dwFlags

Azioni. Questo parametro può essere uno o più dei valori seguenti.

Valore Significato
FLAGS_ERROR_UI_FILTER_FOR_ERRORS
Analizza le intestazioni restituite per gli errori. Chiamare InternetErrorDlg con questo flag impostato seguendo una chiamata a HttpSendRequest in modo da rilevare errori nascosti. Gli errori di autenticazione, ad esempio, sono normalmente nascosti perché la chiamata a HttpSendRequest viene completata correttamente, ma analizzando i codici di stato, InternetErrorDlg può determinare che il proxy o il server richiede l'autenticazione.
FLAGS_ERROR_UI_FLAGS_CHANGE_OPTIONS
Se la funzione ha esito positivo, archivia i risultati della finestra di dialogo nell'handle Internet.
FLAGS_ERROR_UI_FLAGS_GENERATE_DATA
Esegue query sull'handle Internet per informazioni necessarie. La funzione costruisce la struttura di dati appropriata per l'errore. Ad esempio, per gli errori cn del certificato, la funzione afferra il certificato.
FLAGS_ERROR_UI_SERIALIZE_DIALOGS
Serializza le finestre di dialogo di autenticazione per le richieste simultanee in una voce della cache delle password. Il parametro lppvData deve contenere l'indirizzo di un puntatore a una struttura INTERNET_AUTH_NOTIFY_DATA e il client deve implementare una funzione di callback senza blocco thread.
FLAGS_ERROR_UI_FLAGS_NO_UI
Consente al chiamante di passare NULL al parametro hWnd senza errori. Da usare in circostanze in cui non è necessaria alcuna interfaccia utente.

[in, out] lppvData

Puntatore all'indirizzo di una struttura di dati. La struttura può essere diversa per ogni errore che deve essere gestito.

Valore restituito

Restituisce uno dei valori seguenti o un valore di errore in caso contrario.

Codice restituito Descrizione
ERROR_SUCCESS
La funzione è stata completata correttamente.

Per altre informazioni, vedere ERROR_INTERNET_CLIENT_AUTH_CERT_NEEDED nel parametro dwError .

ERROR_CANCELLED
La funzione è stata annullata dall'utente.
ERROR_INTERNET_FORCE_RETRY
Ciò indica che la funzione deve ripetere la richiesta. Nel caso di autenticazione, questo indica che l'utente ha fatto clic sul pulsante OK .
ERROR_INVALID_HANDLE
L'handle della finestra padre non è valido.

Commenti

Informare sempre l'utente quando si verificano uno degli eventi seguenti:

  • 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
A meno che l'utente non abbia scelto esplicitamente di non essere informato di questi eventi, non è possibile esporre l'utente in modo involontario a un rischio di sicurezza significativo.

Come tutti gli altri aspetti dell'API WinINet, questa funzione non può essere chiamata in modo sicuro dall'interno di DllMain o dai costruttori e distruttori degli oggetti globali.

Nota WinINet non supporta le implementazioni del server. Inoltre, non deve essere usato da un servizio. Per le implementazioni del server o i servizi, usare i servizi HTTP di Microsoft Windows (WinHTTP).
 

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione wininet.h
Libreria Wininet.lib
DLL Wininet.dll

Vedi anche

Abilitazione della funzionalità Internet

Funzioni WinINet