C++/MFC で開発したソフトを Windows Server 2019 で実行すると、 Windows 10 と一部、動作が異なることに気がついた。
1. GetTempPath()
GetTempPath() で、一時パスを取得した時、 Windows Server 2019 では、
"C:\Users\(ユーザ名)\AppData\Local\Temp\2\ "
等、数字が付き、このパスは存在しない。
2. locale
次のコードは、Windows 10 では動作するが Windows Server 2019 では、exception が発生し、"bad locale name" と表示される。
std::locale::global(std::locale("En_US"));
次のコードは、Windows 10、Windows Server 2019 共、動作する。
std::locale::global(std::locale("ENU_USA"));