怎样关闭一个正在运行的程序
2006-02-27 11:42:06 来源:WEB开发网核心提示:你可以使用API函数FindWindow和PostMessage去寻找指定的窗口,并关闭它,怎样关闭一个正在运行的程序,下面的例子教给你怎样找到并关掉一个Caption为“Caluclator”的程序,DimwinHwndAsLongDimRetValAsLongwinHwnd=FindWindow(vbNullStr
你可以使用API函数FindWindow和PostMessage去寻找指定的窗口,并关闭它。下面的例子教给你怎样找到并关掉一个Caption为“Caluclator”的程序。
DimwinHwndAsLong
DimRetValAsLong
winHwnd=FindWindow(vbNullString,"Calculator")
Debug.PRintwinHwnd
IfwinHwnd<>0Then
RetVal=PostMessage(winHwnd,WM_CLOSE,0&,0&)
IfRetVal=0Then
MsgBox"置入消息错误!"
EndIf
Else
MsgBox"Calculator没有打开!"
EndIf
为了让以上的代码工作,你必须在模块文件中什么以下API函数:
DeclareFunctionFindWindowLib"user32"Alias_
"FindWindowA"(ByVallpClassNameAsString,_
ByVallpWindowNameAsString)AsLong
DeclareFunctionPostMessageLib"user32"Alias_
"PostMessageA"(ByValhwndAsLong,ByValwMsgAsLong,_
ByValwParamAsLong,lParamAsAny)AsLong
PublicConstWM_CLOSE=&H10->
DimwinHwndAsLong
DimRetValAsLong
winHwnd=FindWindow(vbNullString,"Calculator")
Debug.PRintwinHwnd
IfwinHwnd<>0Then
RetVal=PostMessage(winHwnd,WM_CLOSE,0&,0&)
IfRetVal=0Then
MsgBox"置入消息错误!"
EndIf
Else
MsgBox"Calculator没有打开!"
EndIf
为了让以上的代码工作,你必须在模块文件中什么以下API函数:
DeclareFunctionFindWindowLib"user32"Alias_
"FindWindowA"(ByVallpClassNameAsString,_
ByVallpWindowNameAsString)AsLong
DeclareFunctionPostMessageLib"user32"Alias_
"PostMessageA"(ByValhwndAsLong,ByValwMsgAsLong,_
ByValwParamAsLong,lParamAsAny)AsLong
PublicConstWM_CLOSE=&H10->
更多精彩
赞助商链接