Condividi tramite


Handle DELL'OGGETTONET

Questa sezione contiene informazioni sugli handle usati dalle funzioni WinINet e dalla gerarchia in cui funzionano.

Informazioni sugli handle DELL'OGGETTONET

Gli handle creati e usati dalle funzioni WinINet sono di tipo SNAPSHOTNET. Le funzioni WinINet restituiscono handle DELL'interfaccia UTENTE NON intercambiabili con altri tipi di handle. Pertanto, non possono essere usati con funzioni come ReadFile o CloseHandle. Analogamente, non è possibile usare altri tipi di handle con le funzioni WinINet. Ad esempio, un handle restituito da CreateFile non può essere passato a InternetReadFile.

La funzione InternetCloseHandle chiude gli handle di tipo CLOSENET. Si noti che i valori di handle vengono riciclati rapidamente; pertanto, se un handle viene chiuso e viene generato immediatamente un nuovo handle, è possibile che il nuovo handle abbia lo stesso valore dell'handle appena chiuso.

Gestire la gerarchia

Gli handle DELLA RETE VENGONO mantenuti in una gerarchia ad albero. L'handle restituito dalla funzione InternetOpen è il nodo radice. Gli handle restituiti dalla funzione InternetConnect occupano il livello successivo. Gli handle restituiti dalle funzioni FtpOpenFile, FtpFindFirstFile e HttpOpenRequest sono i nodi foglia.

Windows XP e Windows Server 2003 R2 e versioni precedenti: Anche gli handle restituiti da , GopherOpenFile e GopherFindFirstFile sono nodi foglia.

Il diagramma seguente illustra la gerarchia degli handle DELL'interfaccia DI RETE. Ogni casella nel diagramma rappresenta una funzione che restituisce un handle DELL'interfaccia DI RETE.

funzioni che creano handle

Al livello superiore è la funzione InternetOpen , che crea l'handle radice. Il livello successivo contiene le funzioni InternetOpenUrl e InternetConnect . Le funzioni che usano l'handle restituito da InternetConnect costituiscono l'ultimo livello.

Il diagramma seguente illustra le funzioni che dipendono dall'handle creato da InternetOpenUrl. Le caselle ombreggiate rappresentano le funzioni che restituiscono handle DELL'OGGETTO, mentre le caselle semplici rappresentano le funzioni che usano l'handle DELLANET creata dalla funzione associata.

funzioni che usano l'handle internetopenurl

Le funzioni InternetQueryDataAvailable, InternetReadFile e InternetSetFilePointer usano l'handle BULKNET creato da InternetOpenUrl.

Gerarchia FTP

Il diagramma seguente illustra le funzioni FTP dipendenti dall'handle di sessione FTP restituito da InternetConnect. Le caselle ombreggiate rappresentano le funzioni che restituiscono handle DELL'INTERFACCIA UTENTE , mentre le caselle semplici rappresentano le funzioni che usano l'handle DELLANET CREATO dalla funzione da cui dipendono.

funzioni che usano l'handle di sessione ftp

Le funzioni FtpCreateDirectory, FtpDeleteFile, FtpGetCurrentDirectory, FtpGetFile, FtpPutFile, FtpRemoveDirectory, FtpRenameFile e FtpSetCurrentDirectory usano tutti l'handle DELLNET creato da InternetConnect.

Il diagramma seguente illustra le due funzioni FTP che restituiscono handle e le funzioni che dipendono da esse. Le caselle ombreggiate rappresentano le funzioni che restituiscono handle DELL'INTERFACCIA UTENTE , mentre le caselle semplici rappresentano le funzioni che usano l'handle DELLANET CREATO dalla funzione da cui dipendono.

funzioni che usano l'handle da ftpopen e ftpfindfirstfile

La funzione InternetFindNextFile dipende dall'handle creato da FtpFindFirstFile, mentre InternetReadFile e InternetWriteFile usano l'handle creato da FtpOpenFile.

Gerarchia HTTP

Il diagramma seguente illustra le relazioni delle funzioni usate per il protocollo HTTP. Le caselle ombreggiate rappresentano le funzioni che restituiscono handle DELL'INTERFACCIA UTENTE , mentre le caselle semplici rappresentano le funzioni che usano l'handle DELLANET CREATO dalla funzione da cui dipendono.

funzioni che usano l'handle da httpopenrequest

Le funzioni HttpAddRequestHeaders, HttpQueryInfo, HttpSendRequest, HttpSendRequestEx e InternetErrorDlg dipendono dall'handle creato da HttpOpenRequest.

Il diagramma seguente illustra le funzioni che usano l'handle DELL'interfaccia UTENTE CREATA da HttpOpenRequest dopo l'invio da HttpSendRequest. Le caselle ombreggiate rappresentano le funzioni che restituiscono handle DELL'INTERFACCIA UTENTE , mentre le caselle semplici rappresentano le funzioni che usano l'handle DELLANET CREATO dalla funzione da cui dipendono.

funzioni che usano l'handle dopo httpsendrequest

Dopo che HttpSendRequest ha usato l'handle restituito da HttpOpenRequest, può essere usato da InternetQueryDataAvailable, InternetReadFile e InternetSetFilePointer.

funzioni che usano l'handle dopo httpsendrequestex

Dopo che HttpSendRequestEx ha usato l'handle restituito da HttpOpenRequest, l'handle può essere usato da HttpEndRequest, InternetReadFileEx e InternetWriteFile. Dopo aver chiamato HttpEndRequest , l'handle può essere usato da InternetReadFile, InternetSetFilePointer e InternetQueryDataAvailable.

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).