注册 登录
编程论坛 VB6论坛

求教关于VB调用EXE

sharon沙 发布于 2013-04-22 16:48, 791 次点击
各位大侠:
我在用vb调用一个exe文件的时候出现了问题,不知道该怎么解决,求助啊~~~
这个exe在运行的时候是需要读取另外一个文件的(假设它的名字叫A),单独运行这个exe的时候(也就是直接双击运行)是没问题的,但是当我用VB编写程序调用它的时候,报出错误,说找不到A这个文件,这是为什么呢?
ps:我的VB程序和exe不是在同一个文件夹,这个会有关系吗?
6 回复
#2
Artless2013-04-23 11:23
路径
#3
sharon沙2013-04-24 07:56
之前的问题解决了,但是又有新的问题了~ ~!
我要依次调用两个exe,怎么等到第一个exe运行完了才调用第二个呢?网上找了几个方法貌似都没用
#4
风吹过b2013-04-24 15:16
你用 批处理 吧。

先后一个临时文件。
命名为,如 temp.cmd

假设第一个程序放在 D:\A\ 里面,第二个程序放在 E:\B\ 里面。
临时文件放在 F:\
那么这个临时文件就这样写。

D:
cd \A
start /wait 程序1
E:
cd \B
start /wait 程序2
F:
cd \
del temp.cmd
exit


然后把这个文件写在F:\ ,然后调用 CMD 执行它。
shell "CMD /C f:\temp.cmd" ,vbHide
当这个文件自己消失时,就说明二个程序都执行完成了。
#5
sharon沙2013-04-27 12:49
新问题
lngPId1 = Shell("ReadVarsESO.exe")
Do While IsRunning(lngPId1)
  DoEvents
  If Dir(App.Path & "\eplusout.csv") <> "" Then Exit Do
Loop
Text1.Text = App.Path & "\eplusout.csv"
FileCopy App.Path & "\eplusout.csv", App.Path & "\Result\eplusout.csv"
Name (App.Path & "\Result\eplusout.csv") As (App.Path & "\Result\ProposedModel.csv")

FileCopy 这一步报错了,这是什么原因啊
#6
sharon沙2013-04-27 12:53
ps  错误原因是  路径/文件访问错误
#7
woxingx2013-04-27 13:55
改为相对路径吧  在VB中路径一般用相对路径好
1