vb shell 打开外部程序,为什么打开程序后总是提示找不到我的vb程序所在目录下的一个dat文件?

如果直接双击该外部程序就不会出现这样的问题,或者在那个外部程序所在的目录下找到那个dat文件,然后复制到我的vb程序所在目录里,再用vb打开那个程序就不会出现这样的问题,请问是不是shell本身应该带上什么参数啊?怎么能够解决这个问题?

Shell 语句结构:
shell (PathName,[WindowsStyle As vbAppWinStyle=vbNormalFocus]) As Double

按钮按下事件可以这样写下:
Private Command1_click()
shell "c:\windows\system32\calc.exe",vbNormalFocus
End Sub

其中"PathName"是所要执行文件的路径,请确保正确。文件确实存在!
"vbAppWinStyle"是所要显示窗口的方式,有最大化、最小化、隐藏和普通方式等几种,根据个人要求不同可依修改!

再送你一段代码:【打开文件夹】

Private Command1_click()
shell "explorer C:\",vbMaximizedFocus
End

祝你成功……
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-05-19
你上面用的文件路径也许是相对路径吧,如果两个文件不在同一个文件夹,请使用绝对路径:
Private Sub 打开_Click()
Shell "文件路径\文件名", vbNormalFocus
如:Shell "C:\Program Files\家庭理财管理系统\家庭理财管理系统.exe", vbNormalFocus
End Sub
第2个回答  2011-05-20
我知道你的问题了
你的问题出在你弄到盘上的路径应该是根目录
根目录下的app.path是这样的
比如说G:
那么就是G:\
所以App.Path & "\安装程序\自动安装\setupZD.exe"
就变成了G:\\安装程序\自动安装\setupZD.exe
第3个回答  2011-05-19
shell app.path & "\aaa.dat" 假设你的dat叫aaa
第4个回答  2011-05-19
打开时,要指明路径才行,不然他怎么打开
相似回答