作者QQ29 (我爱阿蓉)
看板C_and_CPP
标题[问题] 使用system("")的小疑惑
时间Sat Aug 1 23:05:29 2009
是这样的~
我想要在程式执行到某步骤 去run另一个exe档案
我只知道很简单的使用system("c:\\folder\\xxx.exe");这样
但我这个xxx.exe他会去读取 某个resource.cfg档案
我用滑鼠点xxx.exe ok他可以执行
但是我使用system去呼叫 他就说xxx.exe找不到resource.cfg....
另外我再试着用
命令提示字元 c:\>c:\folder\xxx.exe......一样说读不到cfg档案
我改用c:\>cd folder
c:\folder>xxx.exe.................用这样就可以跑这个执行档了
我在想是不是system呼叫 环境上路径上还是什麽地方 我忽略了或是我不明白的观念???
谢谢!!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.207.187
1F:推 mongsq:程式执行时会有它的工作目录 如果你在C:\下直接下指令执行 08/01 23:07
2F:→ mongsq:工作目录就会在C:\ 你读取的cfg档可能是用相对路径表示 08/01 23:07
3F:→ mongsq:这时相对的就不是你的程式路径 而是工作目录C:\了 08/01 23:08
4F:→ QQ29:那这样好像就没有方法 有办法解决我这个问题耶= = 08/01 23:10
5F:→ QQ29:还是要我用system 用cd 先切到那个目录下? 08/01 23:15
6F:推 LPH66:这样也不行 因为 system 的呼叫之间是独立的 08/01 23:15
7F:→ LPH66:不过你倒是可以用和命令列提示字元中相同的方法 08/01 23:17
8F:→ QQ29:我想试试看 结果连cd\这些也不知道怎麽表达XD 该怎麽办= = 08/01 23:17
9F:→ LPH66:用 & 连接多个指令 例如 system("cd folder & xxx.exe"); 08/01 23:17
10F:→ QQ29:我测试了一下!! 但如果我是在VC侦错模式下执行程式cd\好像 08/01 23:22
11F:→ QQ29:阿 没事 我成功了= = 谢谢LPH66大大 08/01 23:23
12F:推 ledia:用 chdir ? 08/01 23:33
13F:推 zenixls2:可以简单在指令前後加""字元 08/01 23:53