求助:
各位大侠,小弟遇到一个很费解的问题,请多指教!
问题:
因为需要调用windows API函数,该API函数需要传递一个路径,参数类型为TCHAR *,故需要将QString->TCHAR *。
转换的代码很简单,网上到处都是:
QString s;
(TCHAR *)(s.utf16());
在WIN 7中编译后,能在中文路径下运行,但是不能在含有空格的中文路径下运行。编译好的程序拷贝到XP中,只能在英文路径下面运行。求助,这是什么原因,谢谢!!!
------解决方案--------------------
qt自身的问题
------解决方案--------------------
TCHAR不是宏么?utf16是Unicode吧!
------解决方案--------------------
QString str;
str.toStdWString().c_str();
不就ok了么。。
TCHAR现在也不被建议使用