次の方法で共有


UrlApplySchemeA 関数 (shlwapi.h)

指定した URL 文字列のスキームを決定し、適切なプレフィックスを持つ文字列を返します。

構文

LWSTDAPI UrlApplySchemeA(
  [in]      PCSTR pszIn,
  [out]     PSTR  pszOut,
  [in, out] DWORD *pcchOut,
            DWORD dwFlags
);

パラメーター

[in] pszIn

型: PCTSTR

URL を含む最大長INTERNET_MAX_URL_LENGTHの null で終わる文字列。

[out] pszOut

型: PTSTR

この関数が正常に返されるときに、pszIn で指定された URL に設定された null で終わる文字列を受け取り、標準 スキーム://URL_string 形式に変換するバッファーへのポインター。

[in, out] pcchOut

型: DWORD*

pszOut バッファー内の文字数に設定された値のアドレス。 関数が戻るとき、値は関数が成功したか、E_POINTERを返すかによって異なります。 その他の戻り値の場合、このパラメーターの値は意味がありません。

dwFlags

型: DWORD

スキームを決定する方法を指定するフラグ。 次のフラグを組み合わせることができます。

URL_APPLY_DEFAULT

UrlApplyScheme 決定できない場合は、既定のスキームを適用します。 既定のプレフィックスはレジストリに格納されますが、通常は "http" です。

URL_APPLY_GUESSSCHEME

pszIn調べてスキームの決定を試みます。

URL_APPLY_GUESSFILE

pszInからファイル URL 確認します。

URL_APPLY_FORCEAPPLY

urlApplyScheme 強制的に pszIn のスキームを決定します。

戻り値

型: HRESULT

次のような標準の COM 戻り値を返します。

リターン コード 形容
S_OK
スキームが決定されました。 pszOut は、スキームのプレフィックスを持つ URL を含む文字列を指します。 pcchOut の値は文字列内の文字数に設定され、終端 NULL 文字はカウントされません。
S_FALSE
エラーはありませんでしたが、プレフィックスは付加されませんでした。
E_POINTER
バッファーが小さすぎます。 pcchOut の値は、終端の NULL 文字を含め、バッファーに格納できる必要がある最小文字数 設定されます。

備考

URL に有効なスキームがある場合、文字列は変更されません。 ただし、2 つ以上の文字の組み合わせの後にコロンが続くほぼすべての組み合わせは、スキームとして解析されます。 有効な文字には、"." などの一般的な句読点が含まれます。 入力文字列がこの説明に適合する場合、urlApplyScheme 有効として扱い、スキームを適用しない可能性があります。 関数が URL にスキームを適用するように強制するには、dwFlagsで URL_APPLY_FORCEAPPLY フラグと URL_APPLY_DEFAULT フラグ 設定します。 このフラグの組み合わせにより、関数は URL にスキームを強制的に適用します。 通常、関数は有効なスキームを決定できません。 2 番目のフラグは、有効なスキームを特定できない場合、関数が URL に既定のスキームを適用することを保証します。

手記

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

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional、Windows XP [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー shlwapi.h
ライブラリ Shlwapi.lib
DLL Shlwapi.dll (バージョン 5.0 以降)