<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: не ловит окно IE "Сохранить как"]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=16702</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=16702&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: не ловит окно IE "Сохранить как"».]]></description>
		<lastBuildDate>Wed, 03 Nov 2021 18:29:11 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: не ловит окно IE "Сохранить как"]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=150434#p150434</link>
			<description><![CDATA[<p>Тут не в классе дело, а в том, что окно является принадлежащим другому окну (owned) и при появлении препятствует действиям пользователя в основном окне. Чаще всего такие окна имеют класс #32770, но это не обязательно.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Wed, 03 Nov 2021 18:29:11 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=150434#p150434</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: не ловит окно IE "Сохранить как"]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=150432#p150432</link>
			<description><![CDATA[<p><strong>teadrinker</strong><br />Можно немного объяснить про &quot;модальные окна&quot;, это все с классом &#039;#32770&#039; я так понимаю?</p>]]></description>
			<author><![CDATA[null@example.com (__Михаил__)]]></author>
			<pubDate>Wed, 03 Nov 2021 18:22:50 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=150432#p150432</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: не ловит окно IE "Сохранить как"]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=150415#p150415</link>
			<description><![CDATA[<p><strong>teadrinker</strong> Вы прямо Всеведущий Мудрец по AHK! <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /> Всегда подскажите как решить проблему.<br />Спасибо большое! Все отлично работает!</p>]]></description>
			<author><![CDATA[null@example.com (CyberGudini)]]></author>
			<pubDate>Wed, 03 Nov 2021 16:11:53 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=150415#p150415</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: не ловит окно IE "Сохранить как"]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=150411#p150411</link>
			<description><![CDATA[<p>Возможно этот код не реагирует на модальные окна, не вникал. Вот такой работает:<br /></p><div class="codebox"><pre><code>#Persistent
EVENT_OBJECT_SHOW := 0x8002
Hook := new WinEventHook(EVENT_OBJECT_SHOW, EVENT_OBJECT_SHOW, &quot;HookProc&quot;)

HookProc(hWinEventHook, event, hwnd, idObject)
{
   static OBJID_WINDOW := 0
   if (idObject != OBJID_WINDOW)
      Return
   
   WinGetTitle, Title, ahk_id %hwnd%
   WinGetClass, Class, ahk_id %hwnd%
   if (Class = &quot;#32770&quot; &amp;&amp; Title = &quot;Сохранить как&quot;)
      TrayTip, New Window Opened, Title:`t%Title%`nClass:`t%Class%
}

class WinEventHook
{
   __New(eventMin, eventMax, hookProc, idProcess := 0, idThread := 0, dwFlags := 0) {
      this.hHook := DllCall(&quot;SetWinEventHook&quot;, &quot;UInt&quot;, eventMin, &quot;UInt&quot;, eventMax
                                             , &quot;Ptr&quot;, 0, &quot;Ptr&quot;, RegisterCallback(hookProc, &quot;F&quot;)
                                             , &quot;UInt&quot;, idProcess, &quot;UInt&quot;, idThread, &quot;UInt&quot;, dwFlags, &quot;Ptr&quot;)
   }
   __Delete() {
      DllCall(&quot;UnhookWinEvent&quot;, &quot;Ptr&quot;, this.hHook)
   }
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Wed, 03 Nov 2021 15:24:43 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=150411#p150411</guid>
		</item>
		<item>
			<title><![CDATA[AHK: не ловит окно IE "Сохранить как"]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=150410#p150410</link>
			<description><![CDATA[<p>Мне нужно словить событие открытия в браузере IE вспомогательного окна &quot;Сохранить как&quot; (когда мы сохраняем какой-то файл).<br />Вот код:<br /></p><div class="codebox"><pre><code>
#Persistent
Gui +LastFound
hWnd := WinExist()

DllCall( &quot;RegisterShellHookWindow&quot;, UInt,hWnd )
MsgNum := DllCall( &quot;RegisterWindowMessage&quot;, Str,&quot;SHELLHOOK&quot; )
OnMessage( MsgNum, &quot;ShellMessage&quot; )
Return

ShellMessage( wParam,lParam ) {
  Local k
  If ( wParam = 1 ) ;  HSHELL_WINDOWCREATED := 1
     {
       NewID := lParam
       SetTimer, MsgBox, -1
     }
}

MsgBox:
 WinGetTitle, Title, ahk_id %NewID%
 WinGetClass, Class, ahk_id %NewID%
 TrayTip, New Window Opened, Title:`t%Title%`nClass:`t%Class%
Return
</code></pre></div><p>Все окна ловит кроме окна &quot;Сохранить как&quot;.<br />Я могу конечно воспользоваться альтернативой: по таймеру проверять все открытые окна... Но прежде хотелось бы обойтись без этого.<br />Подскажите пожалуйста что можно сделать в данной ситуации?</p>]]></description>
			<author><![CDATA[null@example.com (CyberGudini)]]></author>
			<pubDate>Wed, 03 Nov 2021 14:04:42 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=150410#p150410</guid>
		</item>
	</channel>
</rss>
