[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] |
|
こちらもご覧ください