2009-11-18 58 views
1

我得到了一个用非托管C++编写的程序,我需要从系统中获取文化信息,并将该信息设置为我的C++应用程序中的当前执行线程。如何在非托管C++中设置文化信息?

谢谢。

+0

什么操作系统? (windows,我假设?) – meklarian 2009-11-18 22:32:37

+0

你应该还说这是一个特定于Windows的问题;)我不得不谷歌才能知道文化信息是什么,我不确定每个C++开发人员都知道它。 – 2009-11-18 22:33:41

+0

我很抱歉,你说得对,它是一个Windows应用程序。 – Vic 2009-11-18 22:35:27

回答

5

在窗口上的非托管C++中,您需要的是Locale。文化是.NET中定义的一个术语,作为该术语的替代品。

有很多功能,但是需要启动的功能称为SetThreadLocale。

SetThreadLocale Function (Windows) @ MSDN

在MSDN文档内,它似乎有在Vista怪癖。您也可以参考以下功能。

SetThreadUILanguage Function (Windows) @ MSDN

感兴趣的其他功能都可以在这里找到。

National Language Support Functions (Windows) @ MSDN
Multilingual User Interface Functions (Windows) @ MSDN

编辑:

如果您正在开发与真正的基本支持的应用程序,的setlocale()也可能会感兴趣。

setlocale (C/C++) @ MSDN

+0

谢谢,它帮了我很多! – Vic 2009-11-18 23:13:39