InternetCombineUrlA 関数 (wininet.h)

ベース URL と相対 URL を 1 つの 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 バッファーのサイズを文字で表す変数へのポインター。 関数が成功した場合、このパラメーターは、null 終端文字を含まない、結合された URL のサイズを文字単位で受け取ります。 関数が失敗した場合、このパラメーターは必要なバッファーのサイズを文字 (null 終端文字を含む) で受け取ります。

[in] dwFlags

関数の操作を制御します。 このパラメーターには、次の値のいずれかを指定できます。

意味
ICU_BROWSER_MODE
"#" または "?"" の後に文字をエンコードまたはデコードせず、末尾の空白を "?" の後に削除しません。 この値を指定しない場合、URL 全体がエンコードされ、末尾の空白は削除されます。
ICU_DECODE
URL が解析される前に、すべての %XX シーケンスをエスケープ シーケンスを含む文字に変換します。
ICU_ENCODE_PERCENT
検出されたパーセント記号をエンコードします。 既定では、パーセント記号はエンコードされません。 この値は、Microsoft Internet エクスプローラー 5 以降で使用できます。
ICU_ENCODE_SPACES_ONLY
スペースのみをエンコードします。
ICU_NO_ENCODE
安全でない文字をエスケープ シーケンスに変換しません。
ICU_NO_META
URL からメタ シーケンス ("." や ".." など) を削除しません。

戻り値

成功した場合は TRUE 、それ以外の場合 は FALSE を 返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。 考えられるエラーは次のとおりです。

リターン コード 説明
ERROR_BAD_PATHNAME
URL を結合できませんでした。
ERROR_INSUFFICIENT_BUFFER
関数に指定されたバッファーが不十分または NULL でした。 lpdwBufferLength パラメーターによって示される値には、結合された URL を保持するために必要なバイト数が含まれます。
ERROR_INTERNET_INVALID_URL
URL の形式が無効です。
ERROR_INVALID_PARAMETER
無効な文字列、バッファー、バッファー サイズ、または flags パラメーターがあります。

注釈

メモ WinINet では、サーバーの実装はサポートされていません。 また、サービスから使用しないでください。 サーバーの実装またはサービスの場合は、 Microsoft Windows HTTP サービス (WinHTTP) を使用します。
 

注意

wininet.h ヘッダーは InternetCombineUrl をエイリアスとして定義します。これは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー wininet.h
Library Wininet.lib
[DLL] Wininet.dll

こちらもご覧ください

一様リソース ロケーターの処理

WinINet 関数