2011-05-16 64 views
0

我有一個非Unicode應用程序正在使用ini閱讀函數的Unicode版本,如GetPrivateProfileSectionW和GetPrivateProfileStringW。當「非Unicode編程語言」設置爲英文時,該程序運行良好。非Unicode代碼程序的語言改變ini閱讀

當我將此設置更改爲中文(PRC)時,函數GetPrivateProfileSectionW和GetPrivateProfileStringW返回null。

我必須保持這種設置爲中文,因爲當爲「非Unicode代碼程序的語言」選擇英文時,CComBSTR.LoadString未按預期工作,它將中文字符作爲問號加載到資源DLL中。

任何想法?

謝謝。

回答

1

Michael Kaplan explains。解決方案是使用Unicode INI文件,它不依賴於「非Unicode編程語言」。

0

「非Unicode程序的語言」也選擇用於文件的默認代碼頁。美國英語通常是Windows-1252。中文會有些不同,比如GB2312或GBK。用記事本打開你的.INI文件並用「ANSI」格式保存,這將是微軟默認選擇的非Unicode語言。