Board logo

标题: 问一个关于VB中的RUN问题,这里有VB高手吗? [打印本页]

作者: zhoushijay     时间: 2007-5-25 18:54    标题: 问一个关于VB中的RUN问题,这里有VB高手吗?

VB中是不是不能使用wcript.shell对象啊? 我想通过单击按钮来运行某个程序
Private Sub Command4_Click()
Set ws = wscript.CreateObject("shell")
ws.run "Vts_02.ifo"
Set ws = Nothing
End Sub
但是提示 要求对象 ,我想问一下要怎么样才能实现?
作者: xuan2xueer     时间: 2007-5-28 18:07
可以用OLE嘛
作者: xuan2xueer     时间: 2007-5-28 18:35
用函数的话。。。
Shell函数是VB中的内部函数,它负责执行一个可执行文件,返回一个Variant(Double),如果成功的话,代表这个程序的进程ID,若不成功,则会返回0。

Shell的语法:Shell(PathName[,WindowStyle])。

PathName 为必需参数。类型为String,它指出了要执行的程序名,以及任何需要的参数或命令行变量,也可以包括路径名。

WindowStyle为可选参数。Integer类型,指定在程序运行时窗口的样式。WindowStyle有以下这些值。

常量 值 描述
VbHide 0 窗口被隐藏,且焦点会移到隐式窗口。
VbNormalFocus 1 窗口具有焦点,且会还原到它原来的大小和位置。
VbMinimizedFocus 2 窗口会以一个具有焦点的图标来显示(缺省值)。
VbMaximizedFocus 3 窗口是一个具有焦点的最大化窗口。
VbNormalNoFocus 4 窗口会被还原到最近使用的大小和位置,而当前活动的窗口仍然保持活动。
VbMinimizedNoFocus 6 窗口会以一个图标来显示,而当前活动的窗口仍然保持活动

SHELL函数的第一个参数是可以设定为相对路径的。举个例子,在程序同一目录下有个文件example.exe:

Private Sub Form_Load()
Dim a As Integer
a = Shell(App.Path & "\example.exe",vbNormalFocus)
End Sub
打开一个example.exe文件

在VB中SHELL函数的使用仅限制于 *.exe *.com *.bat 等类型的文件