[in] lpszHeaders
Null
終止字串的指標,指定要傳送至 HTTP 伺服器的標頭。 如需詳細資訊,請參閱
HttpSendRequest
函式中的
lpszHeaders
參數描述。
[in] dwHeadersLength
TCHAR
中其他標頭的大小。 如果此參數為 -1L 且
lpszHeaders
不是
NULL
,
則會假設 lpszHeaders
為零終止 (ASCIIZ) ,並計算長度。
[in] dwFlags
此參數可以是下列其中一個值。
如果現有的 InternetConnect 物件存在,則嘗試使用要求所需的相同屬性。 這隻適用於 FTP 作業,因為 FTP 是唯一在相同會話期間執行多個作業的通訊協定。 WinINet API 會針對
InternetOpen
所產生的每個
HINTERNET
句柄快取單一連線句柄。
InternetOpenUrl
會針對 HTTP 和 FTP 連線使用此旗標。
擷取 FTP 目錄資訊時,以
WIN32_FIND_DATA
結構傳回數據。 如果未指定此旗標,或透過 CERN Proxy 進行呼叫,
InternetOpenUrl
會傳回目錄的 HTML 版本。
Windows XP 和 Windows Server 2003 R2 和更早版本:
也會在擷取 Gopher 目錄資訊時,以
GOPHER_FIND_DATA
結構傳回數據。
變數的指標,指定傳遞給任何回呼函式的應用程式定義值以及傳回的句柄。
如果成功建立連線,則傳回 URL 的有效句柄,如果連線失敗,則傳回
NULL
。 若要擷取特定錯誤訊息,請呼叫
GetLastError
。 若要判斷為何拒絕存取服務,請呼叫
InternetGetLastResponseInfo
。
如果使用的 URL 包含相對 URL 和以空格分隔的基底 URL,請先呼叫
InternetCanonicalizeUrl
。
這是一般函式,應用程式可用來透過 WinINet 支援的任何通訊協議來擷取數據。 當應用程式不需要存取通訊協定的特定數據,但只需要對應至 URL 的數據時,此函式特別有用。
InternetOpenUrl
函式會剖析 URL 字串、建立與伺服器的連線,並準備下載 URL 所識別的數據。 應用程式接著可以使用
InternetReadFile
(來擷取 URL 資料的目錄) ) 或
InternetFindNextFile
(。 在
InternetOpenUrl
之前,不需要呼叫
InternetConnect
。
Windows XP 和 Windows Server 2003 R2 和更早版本:
InternetOpenUrl
會在小於 1024 的埠上停用 Gopher,但埠 70—標準 Gopher 埠和埠 105,通常用於中央服務組織 (CSO) 名稱搜尋。
呼叫應用程式使用
InternetOpenUrl
所傳回的
HINTERNET
句柄完成之後,必須使用
InternetCloseHandle
函式加以關閉。
注意
在異步模式中工作時 (
InternetOpen
的
dwFlags
參數會指定
INTERNET_FLAG_ASYNC)
,而
dwContext
參數為零, (
INTERNET_NO_CALLBACK) ,
會話句柄上以
InternetSetStatusCallback
設定的回呼函式將不會叫用,不過,呼叫仍會在異步模式中執行
就像 WinINet API 的其他所有層面一樣,無法在 DllMain 或全域物件的建構函式和解構函式內安全地呼叫此函式。
注意
WinINet 不支援伺服器實作。 此外,它不應該從服務使用。 對於伺服器實作或服務,請使用
Microsoft Windows HTTP 服務 (WinHTTP)
。
wininet.h 標頭會將 InternetOpenUrl 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱
函式原型的慣例
。