SetConsoleOutputCP関数
呼び出し元プロセスに関連付けられているコンソールによって使用される出力コード ページを設定します。 コンソールは、出力コード ページを使用して、さまざまな出力関数によって書き込まれた文字値を、コンソール ウィンドウに表示されるイメージに変換します。
構文
BOOL WINAPI SetConsoleOutputCP(
_In_ UINT wCodePageID
);
パラメーター
wCodePageID [in]
設定するコードページの識別子。 詳細については、「解説」を参照してください。
戻り値
関数が成功すると、戻り値は 0 以外になります。
関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。
解説
コード ページは、256 文字のコードを個々の文字にマップします。 異なるコード ページには異なる特殊文字が含まれ、それらは通常は 1 つの言語または言語グループ用にカスタマイズされています。
現在のフォントが固定ピッチ Unicode フォントの場合、 SetConsoleOutputCP は、呼び出されるたびに個別のフォントを読み込むのではなく、文字値のマッピングをフォントのグリフ セットに変更します。 これは、拡張文字 (127 より大きい ASCII 値) をコンソール ウィンドウに表示する方法に影響します。 ただし、現在のフォントがラスター フォントの場合、 SetConsoleOutputCP は拡張文字の表示方法に影響しません。
オペレーティング システムによってインストールまたはサポートされているコード ページを検索するには、EnumSystemCodePages関数を使用します。 ローカル コンピューターで使用できるコード ページの識別子も、次のキーの下のレジストリに格納されます。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage
ただし、レジストリは異なるバージョンの Windows で異なる可能性があるため、EnumSystemCodePagesを使用してコード ページを列挙することをお勧めします。 特定のコード ページが有効かどうかを判断するには、IsValidCodePage関数を使用します。 コード ページに関する詳細情報 (名前を含む) を取得するには、GetCPInfoEx関数を使用します。 使用可能なコード ページ識別子の一覧については、「コード ページ識別子」を参照してください。
コンソールの現在の出力コード ページを確認するには、GetConsoleOutputCP関数を使用します。 コンソールの入力コード ページを設定および取得するには、SetConsoleCP 関数と GetConsoleCP 関数を使用します。
要件
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
ヘッダー | ConsoleApi2.h(WinCon.h 経由、Windows.h を含む) |
ライブラリ | Kernel32.lib |
[DLL] | Kernel32.dll |