InternetCflineUrlW 函式 (wininet.h)
將 URL 破解成其元件元件。
語法
BOOL InternetCrackUrlW(
[in] LPCWSTR lpszUrl,
[in] DWORD dwUrlLength,
[in] DWORD dwFlags,
[in, out] LPURL_COMPONENTSW lpUrlComponents
);
參數
[in] lpszUrl
字串的指標,其中包含要破解的正式 URL。
[in] dwUrlLength
lpszUrl字串的大小,以TCHAR為單位,如果lpszUrl是 ASCIIZ 字串,則為零。
[in] dwFlags
控制作業。 此參數可以是下列其中一個值。
值 | 意義 |
---|---|
|
將編碼的字元轉換回其一般格式。 只有當使用者提供 URL_COMPONENTS 結構中的緩衝區,才能將元件複製到該結構中。 |
|
將所有逸出序列 (%xx) 轉換為其對應的字元。 只有當使用者提供 URL_COMPONENTS 結構中的緩衝區,才能將元件複製到該結構中。 |
[in, out] lpUrlComponents
接收 URL 元件的 URL_COMPONENTS 結構的指標。
傳回值
如果函式成功,則傳回 TRUE ,否則傳回 FALSE 。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。
備註
必要的元件是由 URL_COMPONENTS 結構的成員表示。 每個元件都有值的指標,而且有一個成員可儲存預存值的長度。 如果元件的值和長度都等於零,則不會傳回該元件。 Windows Vista 和更新版本。: 如果元件的值指標是 Null ,而且其對應長度成員的值不是零, 則 lpszUrl 字串中對應元件之第一個字元的位址會儲存在指標中,而元件的長度會儲存在長度成員中。
如果指標包含使用者提供的緩衝區位址,則長度成員必須包含緩衝區的大小。 InternetC,Url 會將元件複製到緩衝區,而長度成員會設定為所複製元件的長度,而尾端字串結束字元的長度減 1。
若要讓 InternetCrackUrl 正常運作, URL_COMPONENTS結構的大小 ,以位元組為單位,必須儲存在 dwStructSize 成員中。
注意請勿在包含空格的 「file://」 URL 上使用InternetC file:// Url,因為lpUrlComponents所指向之URL_COMPONENTS結構中傳回的值太大。 不過,只有包含空白字元的 「file://」 URL 才有這種情況。
就像 WinINet API 所有其他層面一樣,您無法從 DllMain 或全域物件的建構函式和解構函式安全地呼叫此函式。
注意
wininet.h 標頭會將 InternetCflineUrl 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程式碼,可能會導致編譯或執行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | wininet.h |
程式庫 | Wininet.lib |
Dll | Wininet.dll |