发表评论
经常要在工程中调用执行外部程序,因此从网上收集了一个模块,使用方便,值得您一试。
Option Explicit Public Declare Function EnumWindows Lib "user32" (ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long Public Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As Long, lpdwProcessId As Long) As Long Public Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long Public Function EnumWindowsProc(ByVal hwnd As Long, ByVal lParam As Long) As Long Dim pid As Long GetWindowThreadProcessId hwnd, pid If pid = lParam Then ShowWindow hwnd, vbHide End If EnumWindowsProc = 1 End Function Public Function RunApp(ByVal sApp As String) As Boolean On Error GoTo ErrHandle Dim pid As Long pid = Shell(sApp, vbHide) EnumWindows AddressOf EnumWindowsProc, pid RunApp = True ErrHandle: RunApp = False End Function
调用示例:RunApp "c:\abc.exe",运行成功RunApp值为真,否则为假。