共用方式為


InternetCombineUrlA 函式 (wininet.h)

將基底和相對 URL 合併成單一 URL。 產生的 URL (請參閱 InternetCanonicalizeUrl) 。

語法

BOOL InternetCombineUrlA(
  [in]      LPCSTR  lpszBaseUrl,
  [in]      LPCSTR  lpszRelativeUrl,
  [out]     LPSTR   lpszBuffer,
  [in, out] LPDWORD lpdwBufferLength,
  [in]      DWORD   dwFlags
);

參數

[in] lpszBaseUrl

包含基底 URL 之 Null 終止字串的指標。

[in] lpszRelativeUrl

包含相對 URL 之 Null 終止字串的指標。

[out] lpszBuffer

接收合併 URL 之緩衝區的指標。

[in, out] lpdwBufferLength

變數的指標,其中包含 字元中 lpszBuffer 緩衝區的大小。 如果函式成功,此參數會接收合併 URL 的大小,以字元為單位,不包含 Null 終止字元。 如果函式失敗,此參數會接收所需緩衝區的大小,以字元 (包括 null 終止字元) 。

[in] dwFlags

控制函式的作業。 此參數可以是下列其中一個值。

意義
ICU_BROWSER_MODE
不會在 “#” 或 “?”之後編碼或譯碼字元,而且不會移除 “?”之後的尾端空格符。 如果未指定此值,則會編碼整個 URL,並移除尾端空格符。
ICU_DECODE
在剖析 URL 之前,將所有 %XX 序列轉換成字元,包括逸出序列。
ICU_ENCODE_PERCENT
編碼所遇到的任何百分比符號。 根據預設,百分比符號不會編碼。 此值可在 Microsoft Internet Explorer 5 和更新版本中取得。
ICU_ENCODE_SPACES_ONLY
僅編碼空格。
ICU_NO_ENCODE
不會將不安全的字元轉換成逸出序列。
ICU_NO_META
不會移除 (例如 “.” 和 “.” 的中繼序列。從 URL ) 。

傳回值

如果成功,則傳回 TRUE ,否則傳回 FALSE 。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。 可能的錯誤包括下列專案。

傳回碼 Description
ERROR_BAD_PATHNAME
無法合併URL。
ERROR_INSUFFICIENT_BUFFER
提供給函式的緩衝區不足或 NULLlpdwBufferLength 參數所表示的值將包含保存合併 URL 所需的位元組數目。
ERROR_INTERNET_INVALID_URL
URL 的格式無效。
ERROR_INVALID_PARAMETER
字串、緩衝區、緩衝區大小或旗標參數無效。

備註

注意 WinINet 不支援伺服器實作。 此外,不應該從服務使用它。 對於伺服器實作或服務,請使用 Microsoft Windows HTTP Services (WinHTTP)
 

注意

wininet.h 標頭會將 InternetCombineUrl 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例

規格需求

需求
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 wininet.h
程式庫 Wininet.lib
Dll Wininet.dll

另請參閱

處理統一資源定位器

WinINet 函式