概況:初始化一個應用程式,以使用 WinINet 函式。
基本介紹
- 中文名:InternetOpen
- 使用: WinINet 函式
- 屬於:初始化一個應用程式
- 指定:調用 WinINet函式應用程式或入口
VB中的套用,函式聲明,參數說明,C++中的套用,函式聲明,參數,返回值,備註,使用要求,
VB中的套用
函式聲明
Private Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA" _
(ByVal sAgent As String, _
ByVal lAccessType As Long, _
ByVal sProxyName As String, _
ByVal sProxyBypass As String, _
ByVal lFlags As Long) As Long
參數說明
sAgent
指定調用 WinINet 函式的應用程式或入口。該入口用作HTTP協定中用戶代理項。
lAccessType
訪問要求類型,該參數可為下列值之一:
INTERNET_OPEN_TYPE_DIRECT 解析所有本地主機;
INTERNET_OPEN_TYPE_PRECONFIG 返回註冊表中代理或直接的配置;
INTERNET_OPEN_TYPE_PRECONFIG_WITH_NO_AUTOPROXY 返回註冊表中代理或直接的配置,並防止對Microsoft Jscript 或 INS檔案的使用;
INTERNET_OPEN_TYPE_PROXY 為代理傳遞請求,除非代理提供了旁路列表且解析的名字可以繞過代理;此時,函式使用INTERNET_OPEN_TYPE_DIRECT。
sProxyName
指定了當lAccessType類型為INTERNET_OPEN_TYPE_PROXY時,代理伺服器的名字。
不要使用一個空的字元串,因為,該函式將使用它作為代理的名字。WinINet函式僅能識別OERN類型的代理和TIS網關。如果有安裝IE,這些函式也同樣支持SOCKS代理。FTP請求可由CERN類型代理或轉換為HTTP請求,或使用InternetOpenUrl函式實現。
如果lAccessType類型未被設定為INTERNET_OPEN_TYPE_PROXY,該參數將被忽略且為NULL。
sProxyBypass
指向一個字元串,它指定一個可選的主機名列表或IP位址,列表可包括未知元素。
lFlags
該參數可為下列值的任意組合:
INTERNET_FLAG_ASYNC 僅能用於作用在該函式返回的句柄的子句柄上的異步請求。
INTERNET_FLAG_FROM_CACHE 不做網路請求。所有的實體都由快取返回。如果請求條目不在快取中,一個適當的錯誤將返回。
INTERNET_FLAG_OFFLINE 與 INTERNET_FLAG_FROM_CACHE 一樣。
C++中的套用
函式聲明
HINTERNET InternetOpen( _In_ LPCTSTR lpszAgent, _In_ DWORD dwAccessType, _In_ LPCTSTR lpszProxyName, _In_ LPCTSTR lpszProxyBypass, _In_ DWORD dwFlags);
參數
lpszAgent
指向一個空結束的字元串,該字元串指定調用WinInet函式的應用程式或實體的名稱。使用此名稱作為用戶代理的HTTP協定。
dwAccessType
指定訪問類型,參數可以是下列值之一:
Value | Meaning |
---|---|
INTERNET_OPEN_TYPE_DIRECT | 使用直接連線網路。 |
INTERNET_OPEN_TYPE_PRECONFIG | 獲取代理或直接從註冊表中的配置,使用代理連線網路。 |
INTERNET_OPEN_TYPE_PRECONFIG_WITH_NO_AUTOPROXY | 獲取代理或直接從註冊表中的配置,並防止啟動Microsoft JScript或Internet設定(INS)檔案的使用。 |
INTERNET_OPEN_TYPE_PROXY | 通過代理的請求,除非代理旁路列表中提供的名稱解析繞過代理,在這種情況下,該功能的使用。 |
lpszProxyName
指針指向一個空結束的字元串,該字元串指定的代理伺服器的名稱,不要使用空字元串;如果dwAccessType未設定為INTERNET_OPEN_TYPE_PROXY,則此參數應該設定為NULL。
lpszProxyBypass
指向一個空結束的字元串,該字元串指定的可選列表的主機名或IP位址。如果dwAccessType未設定為INTERNET_OPEN_TYPE_PROXY的 ,參數省略則為NULL。
dwFlags
參數可以是下列值的組合:
Value | Meaning |
---|---|
INTERNET_FLAG_ASYNC | 使異步請求處理的後裔從這個函式返回的句柄。 |
INTERNET_FLAG_FROM_CACHE | 不進行網路請求,從快取返回的所有實體,如果請求的項目不在快取中,則返回一個合適的錯誤,如ERROR_FILE_NOT_FOUND。 |
INTERNET_FLAG_OFFLINE | 不進行網路請求,從快取返回的所有實體,如果請求的項目不在快取中,則返回一個合適的錯誤,如ERROR_FILE_NOT_FOUND。 |
返回值
成功:返回一個有效的句柄,該句柄將由應用程式傳遞給接下來的WinINet函式。
失敗:返回NULL。
備註
該函式是第一個由應用程式調用的 WinINet 函式。它告訴 Internet DLL 初始化內部數據結構並準備接收應用程式之後的其他調用。當應用程式結束使用 Internet 函式時,應調用 InternetCloseHandle 函式來釋放與之相關的資源。
應用程式可以對該函式進行任意次數的調用,不過在一般情況下一次調用就已經足夠了。如果要調用多次該函式,應用程式則有必要定義獨立的函式實例的行為,諸如不同的代理伺服器等。
使用要求
最低個人系統 | Windows 2000 Professional |
最低伺服器 | Windows 2000 Server |
最低IE版本 | Internet Explorer 3.0 |
頭檔案 | Wininet.h |
靜態庫 | Wininet.lib |
DLL | Wininet.dll |
Unicode and ANSI names | InternetOpenW(Unicode) andInternetOpenA(ANSI) |