次の方法で共有


CompareStringWrapW 関数

[CompareStringWrapW は Windows XP で使用できます。 以降のバージョンでは使用できません。 CompareStringW は、その場所で使用する必要があります。]

指定したロケールを使用して、2 つの Unicode 文字列を比較します。

注意

CompareStringWrapW は、 CompareStringW 関数のラッパーです。 使用上の注意事項については、「 CompareString 」ページを参照してください。

 

構文

int CompareStringWrapW(
  _In_ LCID    Locale,
  _In_ DWORD   dwCmpFlags,
  _In_ LPCWSTR lpString1,
  _In_ int     cchCount1,
  _In_ LPCWSTR lpString2,
  _In_ int     cchCount2
);

パラメーター

ロケール [in]

種類: LCID

比較に使用されるロケール識別子。 このパラメーターには、次の定義済みのロケール識別子のいずれか、または MAKELCID マクロによって作成されたロケール識別子を指定できます。

LOCALE_SYSTEM_DEFAULT

システムの既定のロケール。

LOCALE_USER_DEFAULT

現在のユーザーの既定のロケール。

dwCmpFlags [in]

型: DWORD

関数が 2 つの文字列を比較する方法を示すフラグ。 既定では、これらのフラグは設定されません。 既定の動作を取得するか、次の値の任意の組み合わせを取得するには、0 に設定します。

NORM_IGNORECASE

大文字と小文字を区別しない。

NORM_IGNOREKANATYPE

ひらがな文字とカタカナ文字を区別しないでください。 対応するひらがな文字とカタカナ文字は等しいと比較されます。

NORM_IGNORENONSPACE

非スペーシング文字を無視します。

NORM_IGNORESYMBOLS

記号を無視します。

NORM_IGNOREWIDTH

1 バイト文字と 2 バイト文字と同じ文字を区別しないでください。

SORT_STRINGSORT

句読点は記号と同じように扱います。

lpString1 [in]

種類: LPCWSTR

比較する最初の Unicode 文字列へのポインター。

cchCount1 [in]

型: int

lpString1 パラメーターが指す文字列内の文字数。 カウントには、終端の null 文字は含まれません。 このパラメーターが負の値の場合、文字列は null で終わると見なされ、長さは自動的に計算されます。

lpString2 [in]

種類: LPCWSTR

比較する 2 番目の Unicode 文字列へのポインター。

cchCount2 [in]

型: int

lpString2 パラメーターが指す文字列内の文字数。 カウントには、終端の null 文字は含まれません。 このパラメーターが負の値の場合、文字列は null で終わると見なされ、長さは自動的に計算されます。

戻り値

型: int

関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。 GetLastError は 、次のいずれかのエラー コードを返す場合があります。

  • ERROR_INVALID_FLAGS
  • ERROR_INVALID_PARAMETER

関数が成功した場合、戻り値は次のいずれかの値になります。

要件
CSTR_LESS_THAN lpString1 パラメーターが指す文字列は、lpString2 パラメーターが指す文字列よりも字句値が小さくなります。
CSTR_EQUAL lpString1 が指す文字列は、lpString2 が指す文字列と構文値で等しくなります。
CSTR_GREATER_THAN lpString1 が指す文字列は、lpString2 が指す文字列よりも字句値の方が大きい

 

注釈

セキュリティの警告: この関数を誤って使用すると、アプリケーションのセキュリティが損なわれる可能性があります。 正しく比較されない文字列は、無効な入力を生成する可能性があります。 文字列をテストして、使用する前に有効であることを確認し、エラー ハンドラーを提供します。 詳細については、「セキュリティに関する考慮事項: 国際機能」を参照してください。

推奨される方法は、Microsoft Layer for Unicode (MSLU) と組み合わせて CompareStringW を使用することです。

CompareStringWrapW は、序数 45 を使用して、Shlwapi.dllから直接呼び出す必要があります。

要件

要件
サポートされている最小のクライアント
Windows 2000 Professional、Windows XP [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2003 [デスクトップ アプリのみ]
ヘッダー
なし
[DLL]
Shlwapi.dll (バージョン 5.0 以降)

こちらもご覧ください

[CompareString]