• 4388阅读
  • 2回复

[提问]argv参数问题.  如何通过argv获取程序自身路径?路径中含中文字符 [复制链接]

上一主题 下一主题
离线wbywcxt
 
只看楼主 倒序阅读 楼主  发表于: 2012-01-03
— 本帖被 XChinux 从 Qt基础编程 移动到本区(2013-04-01) —
中文版操作系统下,我已经成功....,测试没有问题,....中文系统下QT代码为:

#include <QtGui>
int main(int argc,char* argv[])
{
  QApplication ap(argc,argv);
  ap.addLibraryPath("plugins");  
  QTextCodec::setCodecForCStrings(QTextCodec::codecForName("gb18030"));
  QTextEdit qe;
  qe.show();
  qe.append(QString(argv[0]));
  return ap.exec();
}

===============================现在的问题是: 操作系统平台是英文版的WIN7.  

我想写一个QT程序,功能就是: 通过argv参数,获取exe程序的自身路径.

编译后,程序是TEST.exe


我把这个程序 , 放到路径 D:\哈哈\TEST.exe (该带的库都已经带上)这里,运行,但是中文字符都是乱码.

在英文版操作系统下,这个QT代码应该怎么写?

离线roywillow

只看该作者 1楼 发表于: 2012-01-04
你确定QTextCodec::setCodecForCStrings()这一句你真的知道执行后会发生什么?
我记得argv的第0个一般是程序的路径
但是QApplication好像提供了一个函数来提供路径了
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线XChinux

只看该作者 2楼 发表于: 2012-01-04
用QCoreApplication::applicationFilePath()获取
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
快速回复
限100 字节
 
上一个 下一个