Shell 函数
执行一个可执行文件,返回一个 Variant
(Double),如果成功的话,代表这个程序的任务 ID,若不成功,则会返回 0。
Shell 函数示例
本示例使用 Shell 函数来完成一个用户指定的应用程序。
' 将第二个参数值设成 1,可让该程序以正常大小的窗口完成,并且拥有焦点。
Dim RetValRetVal = Shell("C:\WINDOWS\system32\CALC.EXE", 1) ' 完成Calculator。
以可执行文件方式打开(无论扩展名是不是exe):Dim iRet As Integer
iRet = Shell("calc.exe")'iRet为程序运行后的PID
End'结束自身
以关联方式打开(例如扩展名为doc就用Word打开;bmp用画板打开;txt用记事本打开):
把这两行代码粘到代码编辑窗口最上方:
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Const SW_SHOW = 5
Dim iRet As Integer
iRet = ShellExecute(Me.hwnd, "open", "notepad.exe", "", "", SW_SHOW)‘iRet为程序运行情况。
如果返回值 <= 32, 表示执行错误
0 内存不足
2 文件名错误
3 路径名错误
11 EXE 文件无效
26 发生共享错误
27 文件名不完全或无效
28 超时
29 DDE 事务失败
30 正在处理其他 DDE 事务而不能完成该 DDE 事务
31 没有相关联的应用程序
shell中在应用程序后加空格然后加参数调用即可啊。如shell("d:\run.exe 20100103-3")
有个简单方法,把这个程序的运行结果存放到某个文件中,然后vb调用文件中的值就行了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)