在线等高手的答案,解决马上送分
用shell调用一外部程序时,如何跟踪该程序的执行进度,并由进度条在VB主程序显示出来(进度条显示外壳程序运行的百分比)
Private Sub Command1_Click()
Dim X As Long
X = Shell("DYNAMICS.exe", vbHide) ‘DYNAMICS.exe为外部程序
Do While StillRun(X) '循环监视外部程序的运行状态
DoEvents
Loop
msgbox "计算完毕"
End Sub
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Private Const Process_All_Access = &HF0000 Or &H100000 Or &HFFF
'声明检测程序运行情况API函数
Private Function StillRun(ByVal ProgramID) As Boolean
'定义一个判断外壳程序运行状态的函数
Dim hProgram As Long
'ProgramID是Shell函数的返回值 (即外部程序的进程号)
hProgram = OpenProcess(Process_All_Access, False, ProgramID)
'返回被测程序的句柄hProgram
If Not hProgram = 0 Then '外部程序还在运行
StillRun = True
Else '外部程序运行结束
StillRun = False
End If
CloseHandle hProgram
End Function
上面的代码可以做到当外面程序运行结束后,提示“计算完毕”,但是有时候这个外部程序运行时间很长,有好几分钟,甚至10分钟,我想用进度条来显示这个程序当前运行的时间占总时间的百分比,高手们请解答,不甚感谢!
Private Sub Command1_Click()
Dim X As Long
X = Shell("DYNAMICS.exe", vbHide) ‘DYNAMICS.exe为外部程序
Do While StillRun(X) '循环监视外部程序的运行状态
DoEvents
Loop
msgbox "计算完毕"
End Sub
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Private Const Process_All_Access = &HF0000 Or &H100000 Or &HFFF
'声明检测程序运行情况API函数
Private Function StillRun(ByVal ProgramID) As Boolean
'定义一个判断外壳程序运行状态的函数
Dim hProgram As Long
'ProgramID是Shell函数的返回值 (即外部程序的进程号)
hProgram = OpenProcess(Process_All_Access, False, ProgramID)
'返回被测程序的句柄hProgram
If Not hProgram = 0 Then '外部程序还在运行
StillRun = True
Else '外部程序运行结束
StillRun = False
End If
CloseHandle hProgram
End Function
上面的代码可以做到当外面程序运行结束后,提示“计算完毕”,但是有时候这个外部程序运行时间很长,有好几分钟,甚至10分钟,我想用进度条来显示这个程序当前运行的时间占总时间的百分比,高手们请解答,不甚感谢!
...全文
相关推荐
英语专题一送分题准确解一分不丢PPT课件.pptx
**送分题的概念与处理策略**:在高考试卷中,送分题是指那些基于基础知识、计算简单、解题方法直接的题目。这些题目看似容易,但因为考生对它们的轻视可能导致失分,尤其是对于成绩优秀的考生。
送一轮明月阅读答案.docx
送一轮明月阅读答案.docx
川农《创新思维学本科》在线作业100分答案.pdf
川农《创新思维学本科》在线作业100分答案.pdf
英语专题一送分题——准确解一分不丢PPT课件.pptx
该文件是一个关于英语学习的专业课件,主要针对高考中的"送分题",即那些基础、简单、易于解答的题目。课件强调了解题过程中几个关键点的重要性,以帮助学生确保在这些题目上不失分。
大学生创业基础在线课程期末考试答案解析83分.doc
本资源是一份针对大学生创业基础在线课程的期末考试答案解析文档,总分为50分,包含了50道单选题。这份文档旨在帮助学习者理解并掌握创业基础知识,以便于应对考试。以下是一些关键知识点的提炼:1. **


VB基础类
