VS2008 では、AFX_IDP_ASK_TO_SAVE およびその他の AFX_... 文字列は MFC ローカリゼーション DLL (MFC90CHS.dll、MFC90JPN.dll) に保持されます。MFC90KOR.dll など。Windows Vista 以降で使用するには、次のように呼び出します。
SetThreadUILanguage (MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US));
また
SetThreadUILanguage (MAKELANGID(LANG_JAPANESE,SUBLANG_JAPANESE_JAPAN));
Windows XP の呼び出し:
SetThreadLocale(lcid)
定数については、https://msdn.microsoft.com/en-us/library/windows/desktop/dd318693%28v=vs.85%29.aspxを参照してください。
GetSystemDefaultLangID を使用して、正しいロケール (中国語 OS など) を取得します。
重要: GetUserDefaultLangID() または GetSystemDefaultUILanguage() を使用しないでください。これらは異なるものを返します。つまり、英語の OS で中国語のロケールが選択されている場合です。
lcid = MAKELCID(GetSystemDefaultLangID(), SORT_DEFAULT);//With Chinese locale, returns 0x804, zh-CN