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 に強制的に適用するには、dwFlagsURL_APPLY_FORCEAPPLY フラグと URL_APPLY_DEFAULT フラグを設定します。 このフラグの組み合わせにより、関数は URL にスキームを強制的に適用します。 通常、関数は有効なスキームを決定できません。 2 番目のフラグは、有効なスキームを決定できない場合、関数が URL に既定のスキームを適用することを保証します。

注意

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

要件

要件
サポートされている最小のクライアント Windows 2000 Professional、Windows XP [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー shlwapi.h
Library Shlwapi.lib
[DLL] Shlwapi.dll (バージョン 5.0 以降)