如何从其他应用程序关闭Chrome窗口?

时间:2014-08-15 08:35:40

标签: windows google-chrome winapi inno-setup delphi

在我的应用程序中,我需要在安装过程中关闭chrome。

我找到了chrome唯一的名字: Chrome_WidgetWin_0 Chrome_WidgetWin_1 Chrome_OmniboxView Chrome_AutocompleteEditView

 winHwnd := FindWindowByClassName('Chrome_WidgetWin_0');
if winHwnd <> 0 then
  retVal:=postmessage(winHwnd,16,0,0);//16 means WM_CLOSE
winHwnd := FindWindowByClassName('Chrome_WidgetWin_1');
if winHwnd <> 0 then
  retVal:=postmessage(winHwnd,16,0,0);
winHwnd := FindWindowByClassName('Chrome_OmniboxView');
if winHwnd <> 0 then
  retVal:=postmessage(winHwnd,16,0,0);
winHwnd := FindWindowByClassName('Chrome_AutocompleteEditView');
if winHwnd <> 0 then
  retVal:=postmessage(winHwnd,16,0,0);

但有时候id并没有关闭。特别是在最小化时。 但是,postmessage返回true。 有没有办法关闭Chrome? 有没有办法检查Chrome是否真的被用户关闭了?

1 个答案:

答案 0 :(得分:-1)

您可以枚举所有正在运行的进程,并终止所有“chrome.exe”。那太粗鲁了吗? 如果可以接受,请检查以下文件:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms682623(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/ms686714(v=vs.85).aspx