比如
shell "c:\aa.bat"aa.bat内容为:@echo off
set /a zcyh=1
set /a zcyall=100
:zcytime001
set /a zcyh+=1
@echo %zcytime%
set /a zcytime=%zcyall%-%zcyh%
ping -n 2 127.0.0.1 >nul
if %zcytime% gtr 0 goto zcytime001上面批处理是倒计时100秒我想在10秒后就将他们关闭掉(注意是关闭,不是隐藏)
请问怎么处理?
Dim processid As Long
Private Declare Function OpenProcess Lib "kernel32 " (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function TerminateProcess Lib "kernel32 " (ByVal hProcess As Long, ByVal uExitCode As Long) As Long
Private Const PROCESS_QUERY_INFORMATION = &H400 '关闭由shell函数打开的文件
Private Const PROCESS_TERMINATE = &H1Private Sub Command1_Click()
processid = Shell("c:\aa.bat", vbNormalFocus)
End SubPrivate Sub Command2_Click()
'关闭由shell函数打开的文件
Dim hProcess As Long
hProcess = OpenProcess(PROCESS_TERMINATE Or PROCESS_QUERY_INFORMATION, False, processid)
Call TerminateProcess(hProcess, 3838)
End Sub
但是另外一个问题是,如果这个批处理自己已经关闭,我怎么可以判断呢