39.txt

来自「介绍VB里的各种控件的使用方法,窗口控制,图像编程以及OCX等内容,还提供了一个」· 文本 代码 · 共 20 行

TXT
20
字号
监视程序的运行情况 
我们使用 VB 提供的 Shell 方法调用外部程序时,Shell 方法执行后会继续执行下面的代码,而我们不能确定外部程序什么时候调用结束。我们现在可以通过以下方法来实现对被调用程序的监视: 
(1)首先在工程中添加一个模块,然后声明 OpenProcess 及 CloseHandle 这两个 API 函数;
(2)然后加入下面的函数: 
Public Function StillRun(ByVal ProgramID) As Boolean 
Dim lHProgram As Long 
Dim lReturn As Long 
hProgram = OpenProcess(0, False, ProgramID) 
If Not hProgram = 0 Then 
    StillRun = True 
Else 
    StillRun = False 
End If 
CloseHandle hProgram 
End Function 
说明:ProgramID 是 Shell 函数返回的那个值, 那是一个进程号;lHProgram 是被测程序的进程句柄;lReturn是进程的返回码。本程序只是在WIN32下有效,使用重要注意一个问题, 就是代码的重入问题。可以用类似以下的代码来解决。
While StillRun(id) 
    DoEvents 
Wend 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?