怎样关闭一个正在运行的程序
你可以使用API函数FindWindow和PostMessage去寻找指定的窗口,并关闭它。下面的例子教给你怎样找到并关掉一个Caption为“Caluclator”的程序。 DimwinHwndAsLong DimRetValAsLong winHwnd=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->
- 上一篇:重启Windows2000/NT系统
 - 下一篇:在关机或Logff前信息的拦截
 
精彩图集
    
    精彩文章
    



