次の方法で共有


InternetCrackUrlA 関数 (wininet.h)

URL をコンポーネントパーツに割り込みます。

構文

BOOL InternetCrackUrlA(
  [in]      LPCSTR            lpszUrl,
  [in]      DWORD             dwUrlLength,
  [in]      DWORD             dwFlags,
  [in, out] LPURL_COMPONENTSA lpUrlComponents
);

パラメーター

[in] lpszUrl

解読される正規 URL を含む文字列へのポインター。

[in] dwUrlLength

lpszUrl 文字列のサイズ (TCHAR)、lpszUrl が ASCIIZ 文字列の場合は 0。

[in] dwFlags

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

価値 意味
ICU_DECODE
エンコードされた文字を通常の形式に戻します。 これは、コンポーネントをコピーする URL_COMPONENTS 構造体にユーザーがバッファーを提供する場合にのみ使用できます。
ICU_ESCAPE
すべてのエスケープ シーケンス (%xx) を対応する文字に変換します。 これは、コンポーネントをコピーする URL_COMPONENTS 構造体にユーザーがバッファーを提供する場合にのみ使用できます。

[in, out] lpUrlComponents

URL コンポーネントを受け取る URL_COMPONENTS 構造体へのポインター。

戻り値

関数 成功した場合は TRUE、それ以外の場合は FALSE 返します。 拡張エラー情報を取得するには、GetLastError呼び出します。

備考

必要なコンポーネントは、URL_COMPONENTS 構造体のメンバーによって示されます。 各コンポーネントには値へのポインターがあり、格納されている値の長さを格納するメンバーがあります。 コンポーネントの値と長さの両方が 0 の場合、そのコンポーネントは返されません。 Windows Vista 以降。: コンポーネントの値へのポインターが NULL 、対応する長さメンバーの値が 0 以外の場合、lpszUrl 文字列内の対応するコンポーネントの最初の文字のアドレスがポインターに格納され、コンポーネントの長さが長さメンバーに格納されます。

ポインターにユーザー指定のバッファーのアドレスが含まれている場合、長さメンバーにはバッファーのサイズが含まれている必要があります。 InternetCrackUrl はコンポーネントをバッファーにコピーし、length メンバーはコピーされたコンポーネントの長さに設定され、末尾の文字列ターミネータの場合は 1 を引いた値に設定されます。

InternetCrackUrl 正常に動作させるには、URL_COMPONENTS 構造体のサイズ (バイト単位) を dwStructSize メンバーに格納する必要があります。

dwUrlPathLeng th lpUrlComponents が指す URL_COMPONENTS 構造体のメンバー dwUrlPathLength で返される値が大きすぎるため、スペースを含む "file://" URL では InternetCrackUrl 使用しないでください。 ただし、これは、スペース文字を含む "file://" URL の場合のみです。

WinINet API の他のすべての側面と同様に、この関数は DllMain またはグローバル オブジェクトのコンストラクターとデストラクターから安全に呼び出すことはできません。

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

手記

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

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー wininet.h
ライブラリ Wininet.lib
DLL Wininet.dll

関連項目

FtpOpenFile

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

InternetCloseHandle

InternetFindNextFile の

InternetSetStatusCallback の

WinINet Functions の