请教VB怎么调用其他程序?

2025-03-01 06:04:15
推荐回答(1个)
回答1:

以可执行文件方式打开(无论扩展名是不是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 没有相关联的应用程序