如何完全禁用我的应用程序(原生c ++)的数字替换(例如印地语数字而不是阿拉伯数字)?
我希望所有数字都显示为0123而不是0123
Windows中的本地化选项有一个选项,但我不想为用户更改它。仅适用于我的应用。
谢谢!
答案 0 :(得分:1)
你说原生C ++并且仍然有一个WinForms标签稍微混淆了......
假设它是一个没有任何.Net的原生C ++应用程序,我会看here所述的SetThreadLocale
函数。
答案 1 :(得分:1)
不确定它是否有效,但尝试在LCType参数设置为SetLocalInfo
的情况下调用LOCALE_IDIGITSUBSTITUTION
。请查看GetLocalInfo
和SetLocalInfo
的MSDN文档。
似乎不可能以编程方式更改所有值,我也不确定这是否只会影响活动进程。希望这有帮助!
答案 2 :(得分:1)
由于印象影响较小,您可以使用U + FF1x字符代替U + 003x。