<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK v2:  Нестабильность ControlClick]]></title>
	<link rel="self" href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=18592&amp;type=atom" />
	<updated>2026-08-02T11:06:33Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.script-coding.com/viewtopic.php?id=18592</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK v2:  Нестабильность ControlClick]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=163473#p163473" />
			<content type="html"><![CDATA[<p>Перепроверил нестабильность - она исчезла <img src="//forum.script-coding.com/img/smilies/roll.png" width="15" height="15" /><br />ControlClick стабильно выполняется, без SetControlDelay(-1).<br />Буду дальше смотреть.</p>]]></content>
			<author>
				<name><![CDATA[haridev]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=45040</uri>
			</author>
			<updated>2026-08-02T11:06:33Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=163473#p163473</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK v2:  Нестабильность ControlClick]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=163470#p163470" />
			<content type="html"><![CDATA[<p>Можете попробовать задать вопрос <a href="https://www.autohotkey.com/boards/viewforum.php?f=81">тут</a>.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2026-07-26T19:45:52Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=163470#p163470</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK v2:  Нестабильность ControlClick]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=163465#p163465" />
			<content type="html"><![CDATA[<p>Хотелось бы узнать, конечно, почему ControlClick не реализован через PostMessage(0x00F5... <br />Это баг или фича?</p>]]></content>
			<author>
				<name><![CDATA[haridev]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=45040</uri>
			</author>
			<updated>2026-07-25T16:11:24Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=163465#p163465</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK v2:  Нестабильность ControlClick]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=163459#p163459" />
			<content type="html"><![CDATA[<p>В общем, лучше вместо SetControlDelay(-1), ControlClick пользовать PostMessage(0x00F5... , так как без задержки другие команды в других случаях не работают. У меня перестала работать ControlChooseIndex.</p>]]></content>
			<author>
				<name><![CDATA[haridev]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=45040</uri>
			</author>
			<updated>2026-07-11T12:46:50Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=163459#p163459</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK v2:  Нестабильность ControlClick]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=163436#p163436" />
			<content type="html"><![CDATA[<p>В общем, картинка у меня сложилась.ControlClick выполняет последовательно 2 действия: кнопка вниз и кнопка вверх с промежутком 20 мс. И-за промежутка некоторые обработчики считают, что полного клика не было.<br />SetControlDelay(-1) устраняет задержку, и клик становится полным.</p>]]></content>
			<author>
				<name><![CDATA[haridev]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=45040</uri>
			</author>
			<updated>2026-06-19T01:39:36Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=163436#p163436</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK v2:  Нестабильность ControlClick]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=163435#p163435" />
			<content type="html"><![CDATA[<p>Попробовал Chatgpt через агрегатор study24.ai. Токенов не хватило понять, лучше ли он бесплатных ))</p>]]></content>
			<author>
				<name><![CDATA[haridev]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=45040</uri>
			</author>
			<updated>2026-06-18T06:43:38Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=163435#p163435</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK v2:  Нестабильность ControlClick]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=163434#p163434" />
			<content type="html"><![CDATA[<p><strong>haridev</strong>, Grok или Chatgpt советую использовать. Правда напрямую не выйдет.</p>]]></content>
			<author>
				<name><![CDATA[__Михаил__]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=40928</uri>
			</author>
			<updated>2026-06-18T05:44:49Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=163434#p163434</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK v2:  Нестабильность ControlClick]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=163433#p163433" />
			<content type="html"><![CDATA[<p>Да, кстати.</p><p>Обзор от ИИ гугл</p><p>Когда ControlClick выделяет кнопку, но не активирует ее выполнение (срабатывание функции), это связано с тем, что клик проходит мимо скрытых слоев программы.</p><p>Вопрос. Почему клик проходит мимо скрытых слоев программы?</p><p>Ответ. Причина в том, что ControlClick — это не физическое движение вашей мыши, а программная иллюзия.</p><p>Ну и так далее.</p><br /><p>Кстати, я так и не понял, почему &quot;SetControlDelay -1&quot; или &quot;NA&quot;,&nbsp; из их описания, помогают.</p>]]></content>
			<author>
				<name><![CDATA[haridev]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=45040</uri>
			</author>
			<updated>2026-06-16T14:52:06Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=163433#p163433</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK v2:  Нестабильность ControlClick]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=163432#p163432" />
			<content type="html"><![CDATA[<p>Режим ИИ гугл бесплатный.</p>]]></content>
			<author>
				<name><![CDATA[Alectric]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=26027</uri>
			</author>
			<updated>2026-06-16T14:24:01Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=163432#p163432</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK v2:  Нестабильность ControlClick]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=163431#p163431" />
			<content type="html"><![CDATA[<p>Так бесплатных вроде нет других.</p>]]></content>
			<author>
				<name><![CDATA[haridev]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=45040</uri>
			</author>
			<updated>2026-06-16T10:20:53Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=163431#p163431</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK v2:  Нестабильность ControlClick]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=163430#p163430" />
			<content type="html"><![CDATA[<p>Не, DeepSeek в AHK тоже не умеет. <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2026-06-16T07:35:27Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=163430#p163430</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK v2:  Нестабильность ControlClick]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=163429#p163429" />
			<content type="html"><![CDATA[<p>Вот чего насоветовала DeepSeek<br /></p><div class="codebox"><pre><code>Loop 5 {
    try ControlClick &quot;Button1&quot;, &quot;Окно&quot;
    catch
        Sleep 100
    else
        break
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[haridev]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=45040</uri>
			</author>
			<updated>2026-06-16T03:29:08Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=163429#p163429</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK v2:  Нестабильность ControlClick]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=163427#p163427" />
			<content type="html"><![CDATA[<p>Я бы не использовал gigachat. Используйте те нейросети, которые могут посмотреть и оценить исходный код функций.<br /></p><div class="quotebox"><cite>haridev пишет:</cite><blockquote><p>Выходит, он главный форум по autohotkey то ли не читает, то ли не принимает во внимание</p></blockquote></div><p>Ну, вообще-то, другие нейросети тоже не могут обычно прочитать AHK-форум, там защита Cloudflare от ботов.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2026-06-14T19:32:56Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=163427#p163427</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK v2:  Нестабильность ControlClick]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=163426#p163426" />
			<content type="html"><![CDATA[<p>Что примечательно, gigachat не включил в ответ ни&nbsp; &quot;Use SetControlDelay -1 prior to ControlClick&quot;, ни postmessage. Выходит, он главный форум по autohotkey то ли не читает, то ли не принимает во внимание.</p>]]></content>
			<author>
				<name><![CDATA[haridev]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=45040</uri>
			</author>
			<updated>2026-06-14T18:30:29Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=163426#p163426</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK v2:  Нестабильность ControlClick]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=163425#p163425" />
			<content type="html"><![CDATA[<p>в autohotkey v2 инструкция controlclick работает неравильно: кнопка выделяется, но действия по ней не происходит. Как и чем обеспечить стабильное нажатие на кнопку в autohotkey?</p><p>Ответ gigachat.</p><p>Проблема, с которой вы столкнулись, действительно известна для AutoHotkey v2. В ряде случаев ControlClick выделяет кнопку, но не выполняет по ней реальное нажатие. Это связано с тем, как современные приложения обрабатывают сообщения от системы и как именно ControlClick эмулирует действия мыши.</p><p>Рекомендации и решения:</p><p>Использование SendMessage вместо ControlClick<br />Вместо ControlClick для гарантированного срабатывания часто используют отправку сообщения непосредственно элементу управления через SendMessage. Это наиболее стабильный способ, который работает даже там, где ControlClick не даёт эффекта. Пример рабочего кода для AHK v2:</p><p>WinExist(&quot;A&quot;) ; Устанавливает последнее найденное окно как активное<br />hWndControl := ControlGetHwnd(&quot;Button3&quot;) ; Получаем HWND кнопки (замените на нужный ClassNN или текст)<br />SendMessage 0x00F5, hWndControl, True ; 0x00F5 = BM_CLICK (нажатие кнопки)<br />Вместо 0x00F5 можно использовать 0x0028 (WM_NEXTDLGCTL), если нужно передать фокус и нажать Enter, но для кнопок чаще всего нужен именно BM_CLICK. Такой подход стабильно работает в большинстве современных программ.</p><p>Параметр NA в ControlClick<br />Если вы всё же хотите использовать ControlClick, попробуйте добавить параметр NA (NoActivate) в конец команды. Это заставляет скрипт ждать отпускания кнопки мыши, что иногда решает проблему:</p><p>ControlClick, Button3, , , , , NA</p><p>Этот совет пришёл из AHK v1, но его часто успешно применяют и в v2.</p><p>Альтернативные варианты<br />Tab и Enter: Если интерфейс стандартный, можно передать фокус кнопке с помощью ControlFocus или отправки Tab, а затем нажать Enter.<br />Прямая активация окна: Перед кликом убедитесь, что окно активно (WinActivate). Некоторые окна игнорируют клики по элементам, если не находятся на переднем плане.<br />Проверка ClassNN и текста: Убедитесь, что вы используете правильный идентификатор (ClassNN или текст) элемента управления. Для этого используйте утилиту Window Spy, входящую в состав AutoHotkey.<br />Вывод:<br />Для стабильного нажатия на кнопку в AutoHotkey v2 рекомендуется использовать метод с ControlGetHwnd и SendMessage, так как он обходит ограничения эмуляции мыши и работает напрямую с API Windows. Если этот способ не подходит по каким-то причинам — попробуйте добавить параметр NA к команде ControlClick или использовать навигацию по Tab + Enter.</p>]]></content>
			<author>
				<name><![CDATA[haridev]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=45040</uri>
			</author>
			<updated>2026-06-14T18:08:16Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=163425#p163425</id>
		</entry>
</feed>
