Funzione InternetOpenA (wininet.h)
Inizializza l'uso di un'applicazione delle funzioni WinINet.
Sintassi
HINTERNET InternetOpenA(
[in] LPCSTR lpszAgent,
[in] DWORD dwAccessType,
[in] LPCSTR lpszProxy,
[in] LPCSTR lpszProxyBypass,
[in] DWORD dwFlags
);
Parametri
[in] lpszAgent
Puntatore a un nullstringa con terminazione che specifica il nome dell'applicazione o dell'entità che chiama le funzioni WinINet. Questo nome viene usato come agente utente nel protocollo HTTP.
[in] dwAccessType
Tipo di accesso richiesto. Questo parametro può essere uno dei valori seguenti.
Valore | Significato |
---|---|
|
Risolve tutti i nomi host in locale. |
|
Recupera il proxy o la configurazione diretta dal Registro di sistema. |
|
Recupera il proxy o la configurazione diretta dal Registro di sistema e impedisce l'uso di un file microsoft JScript di avvio o installazione Internet (INS). |
|
Passa le richieste al proxy a meno che non venga specificato un elenco di bypass proxy e il nome da risolvere ignora il proxy. In questo caso, la funzione usa INTERNET_OPEN_TYPE_DIRECT. |
[in] lpszProxy
Puntatore a un nullstringa con terminazione che specifica il nome dei server proxy da utilizzare quando viene specificato l'accesso proxy impostando dwAccessType su INTERNET_OPEN_TYPE_PROXY. Non usare una stringa vuota, perché InternetOpen lo userà come nome proxy. Le funzioni WinINet riconoscono solo proxy di tipo CERN (solo HTTP) e il gateway FTP TIS (solo FTP). Se Microsoft Internet Explorer è installato, queste funzioni supportano anche proxy SOCKS. Le richieste FTP possono essere effettuate tramite un proxy di tipo CERN modificandole in una richiesta HTTP o usando InternetOpenUrl. Se dwAccessType non è impostato su INTERNET_OPEN_TYPE_PROXY, questo parametro viene ignorato e deve essere NULL. Per altre informazioni sull'elenco dei server proxy, vedere la sezione Elenco dei server proxy di Abilitazione della funzionalità Internet.
[in] lpszProxyBypass
Puntatore a un nullstringa con terminazione che specifica un elenco facoltativo di nomi host o indirizzi IP o entrambi, che non devono essere indirizzati attraverso il proxy quando dwAccessType è impostato su INTERNET_OPEN_TYPE_PROXY. L'elenco può contenere caratteri jolly. Non usare una stringa vuota, perché InternetOpen lo userà come elenco di bypass proxy. Se questo parametro specifica la macro "<locale>", la funzione ignora il proxy per qualsiasi nome host che non contenga un punto.
Per impostazione predefinita, WinINet ignora il proxy per le richieste che usano i nomi host "localhost", "loopback", "127.0.0.1" o "[::1]". Questo comportamento esiste perché in genere un server proxy remoto non risolverà correttamente questi indirizzi.Internet Explorer 9: È possibile rimuovere il computer locale dall'elenco di bypass proxy usando la macro "<-loopback>".
Se dwAccessType non è impostato su INTERNET_OPEN_TYPE_PROXY, questo parametro viene ignorato e deve essere NULL.
[in] dwFlags
Opzioni. Questo parametro può essere una combinazione dei valori seguenti.
Valore | Significato |
---|---|
|
Effettua solo richieste asincrone su handle discendenti dall'handle restituito da questa funzione. |
|
Non effettua richieste di rete. Tutte le entità vengono restituite dalla cache. Se l'elemento richiesto non è presente nella cache, viene restituito un errore appropriato, ad esempio ERROR_FILE_NOT_FOUND. |
|
Identico a INTERNET_FLAG_FROM_CACHE. Non effettua richieste di rete. Tutte le entità vengono restituite dalla cache. Se l'elemento richiesto non è presente nella cache, viene restituito un errore appropriato, ad esempio ERROR_FILE_NOT_FOUND. |
Valore restituito
Restituisce un handle valido passato dall'applicazione alle funzioni WinINet successive. Se InternetOpen ha esito negativo, restituisce NULL. Per recuperare un messaggio di errore specifico, chiamare GetLastError.
Osservazioni
InternetOpen è la prima funzione WinINet chiamata da un'applicazione. Indica alla DLL Internet di inizializzare le strutture di dati interne e prepararsi per le chiamate future dall'applicazione. Al termine dell'uso delle funzioni Internet, l'applicazione deve chiamare InternetCloseHandle per liberare l'handle e le risorse associate.
L'applicazione può effettuare un numero qualsiasi di chiamate a InternetOpen, anche se una singola chiamata è normalmente sufficiente. L'applicazione potrebbe dover definire comportamenti separati per ogni 'istanza di InternetOpen, ad esempio server proxy diversi configurati per ognuno di essi.
Al termine dell'utilizzo dell'applicazione chiamante, l'handle di
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 di oggetti globali.
Nota
L'intestazione wininet.h definisce InternetOpen come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows 2000 Professional [solo app desktop] |
server minimo supportato | Windows 2000 Server [solo app desktop] |
piattaforma di destinazione | Finestre |
intestazione |
wininet.h |
libreria |
Wininet.lib |
dll | Wininet.dll |