• 5585阅读
  • 4回复

[提问]QProcess 怎么能传递给子程序没有路径的命令行? [复制链接]

上一主题 下一主题
离线longzhitengy
 
只看楼主 倒序阅读 楼主  发表于: 2012-11-21
QProcess 打开 d:\path\1.exe 命令行参数为 abcd ,在1.exe中使用getcommandline()可以得到命令行为 " d:\path\1.exe abcd". 怎么做,能使得getcommandline()只得到"abcd".
window中用createprocess("1.EXE","abcd"...)就可以。。。
离线uidab

只看该作者 1楼 发表于: 2012-11-21
回 楼主(longzhitengy) 的帖子
你的 QProcess启动1.exe的代码是怎么写的???
void QProcess::start ( const QString & program, const QStringList & arguments, OpenMode mode = ReadWrite )

abcd 作为参数放到start的第二个参数里试试!
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
离线roywillow

只看该作者 2楼 发表于: 2012-11-21
在我印象中,一个程序总是会得到一个参数——它自己的完整路径
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线XChinux

只看该作者 3楼 发表于: 2012-11-21
QProcess::startDetached("D:\\path\\1.exe", QStringList() << "abcd");


==========================
在1.exe中:
QApplication::arguments()获取参数列表。

即使是只通过argc, argv这两个参数也可以得到呀。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线uidab

只看该作者 4楼 发表于: 2012-11-21
回 2楼(roywillow) 的帖子
嗯, 我怀疑,他说的getcommandline就是这样。不过没有代码,也只能猜一下了。
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
快速回复
限100 字节
 
上一个 下一个