2009-11-18 24 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