カレンダーに関するロケール情報の項目を設定する。詳細は「日付とカレンダー」を参照。(Unicode)
SetCalendarInfoW Locale, Calendar, CalType, lpCalData
Locale : [int] ロケールを指定するロケール識別子。MAKELCID マクロで作成するか、次の定義済み値のいずれかを使用できる。 Calendar : [int] 情報を設定する対象カレンダーのカレンダー識別子。 CalType : [int] 設定するカレンダー情報の種類。この関数で有効なのは以下の CALTYPE 値のみである。CAL_USE_CP_ACP 定数は ANSI 版でのみ意味を持つ。 lpCalData : [wstr] null 終端のカレンダー情報文字列へのポインタ。情報は指定したカレンダー種別の形式でなければならない。
(プラグイン / モジュール : kernel32.dll)
カレンダーに関するロケール情報の項目を設定する。詳細は「日付とカレンダー」を参照。(Unicode) [戻り値] 成功した場合は非ゼロ、それ以外は 0 を返す。拡張エラー情報を取得するには GetLastError を呼び出す。次のいずれかのエラーコードが返されることがある: (以下省略) [備考] この関数はカレンダー設定のユーザーオーバーライド部分のみに影響し、システム既定は設定しない。カレンダー情報は Unicode 版では常に null 終端の Unicode 文字列として、ANSI 版では null 終端の ANSI 文字列として渡される。整数は許可されておらず、数値はすべて Unicode または ANSI テキストで指定する必要がある。ANSI 版を Unicode 専用ロケール識別子で呼び出した場合、OS がシステムコードページを使用するため関数は成功することがある。ただしシステムコードページで未定義の文字は、文字列中でクエスチョンマーク (?) として現れる。CAL_ITWODIGITYEARMAX は、指定したロケールで対象カレンダーがサポートされていなくても、任意のカレンダーで使用できる。複雑化を避けるため、アプリケーションは EnumCalendarInfo を呼び出して対象ロケールでそのカレンダーがサポートされていることを確認すべきである。 > [!NOTE] > winnls.h ヘッダは SetCalendarInfo を、UNICODE プリプロセッサ定数の定義に応じて ANSI 版または Unicode 版を自動選択するエイリアスとして定義する。エンコーディング中立なエイリアスと中立でないコードを混在させると、コンパイルエラーや実行時エラーを引き起こすことがある。詳細は [関数プロトタイプの規約](/windows/win32/intl/conventions-for-function-prototypes) を参照。
| プラグイン / モジュール | kernel32.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の kernel32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_kernel32_gen2.hs |