<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK:Работа модификаторов при посылке ControlSend]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=11112&amp;type=atom" />
	<updated>2015-12-01T06:53:50Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=11112</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK:Работа модификаторов при посылке ControlSend]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=99433#p99433" />
			<content type="html"><![CDATA[<p>Значит ничего не поделаешь. Так устроен <a href="https://ru.wikipedia.org/wiki/%D0%A4%D0%BE%D0%BA%D1%83%D1%81_(%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D0%BA%D0%B8%D0%B9_%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81)">фокус ввода</a>.</p>]]></content>
			<author>
				<name><![CDATA[Alectric]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26027</uri>
			</author>
			<updated>2015-12-01T06:53:50Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=99433#p99433</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:Работа модификаторов при посылке ControlSend]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=99431#p99431" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Alectric пишет:</cite><blockquote><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header"><strong>+</strong>&nbsp;Есть такой вариант:</div><div class="fancy_spoiler"><div class="codebox"><pre><code>



Run, %a_windir%\Notepad.exe, , , Pid1
winwait,ahk_pid %Pid1%
ControlGetFocus,hControl,ahk_pid %Pid1%

Run, %a_windir%\Notepad.exe, , , Pid2
WinMove, % A_ScreenWidth/4, % A_ScreenHeight/4
WinMove, % &quot;ahk_pid &quot; Pid1, , % A_ScreenWidth/5, % A_ScreenHeight/5
ControlSetText, , В этом окне блокнота при помощи Ctrl+A или Shift+Left \ Right попытаться выделить текст., % &quot;ahk_pid &quot; Pid2
WinWaitActive, % &quot;ahk_pid &quot; Pid2

While WinActive(&quot;ahk_pid&quot; Pid2)
{
  PostMessage,0x100,0x41,,%hControl%,ahk_pid %Pid1%
  PostMessage,0x100,0x08,,%hControl%,ahk_pid %Pid1%
  Sleep 10
}
Process, Close, % Pid1
Process, Close, % Pid2

</code></pre></div></div></div></blockquote></div><p>А с этим вариантом модификаторы передаются не активному окну блокнота.</p>]]></content>
			<author>
				<name><![CDATA[Nikva]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27416</uri>
			</author>
			<updated>2015-12-01T06:36:12Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=99431#p99431</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:Работа модификаторов при посылке ControlSend]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=99408#p99408" />
			<content type="html"><![CDATA[<p>Мне кажется разработчики AHK что-то перехимичили.<br />Если зажать F1 в этом скрипте, то выдаст &quot;AAaaaAAAaAAAaaaAAaAaaAaaaAaAAaaaAAAaaAa&quot;:<br /></p><div class="codebox"><pre><code>Run, Notepad.exe, , , Pid1
f1::
ControlSend, , A, % &quot;ahk_pid &quot; Pid1
return
</code></pre></div><p>...</p><p>Подтверждаю! В версии 112207 такого глюка нет... хотя все-таки есть, если отправлять маленькую букву.</p><p>...</p><p>Но CapsLock все-таки моргает.</p><p>...</p><p>Есть такой вариант:<br /></p><div class="codebox"><pre><code>



Run, %a_windir%\Notepad.exe, , , Pid1
winwait,ahk_pid %Pid1%
ControlGetFocus,hControl,ahk_pid %Pid1%

Run, %a_windir%\Notepad.exe, , , Pid2
WinMove, % A_ScreenWidth/4, % A_ScreenHeight/4
WinMove, % &quot;ahk_pid &quot; Pid1, , % A_ScreenWidth/5, % A_ScreenHeight/5
ControlSetText, , В этом окне блокнота при помощи Ctrl+A или Shift+Left \ Right попытаться выделить текст., % &quot;ahk_pid &quot; Pid2
WinWaitActive, % &quot;ahk_pid &quot; Pid2

While WinActive(&quot;ahk_pid&quot; Pid2)
{
  PostMessage,0x100,0x41,,%hControl%,ahk_pid %Pid1%
  PostMessage,0x100,0x08,,%hControl%,ahk_pid %Pid1%
  Sleep 10
}
Process, Close, % Pid1
Process, Close, % Pid2

</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Alectric]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26027</uri>
			</author>
			<updated>2015-11-30T17:06:56Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=99408#p99408</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:Работа модификаторов при посылке ControlSend]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=99393#p99393" />
			<content type="html"><![CDATA[<p>Похоже, не лечится. Максимум что удалось - стабильно работает Ctrl+A.</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2015-11-30T11:22:10Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=99393#p99393</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AHK:Работа модификаторов при посылке ControlSend]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=99391#p99391" />
			<content type="html"><![CDATA[<p>В момент посылки клавиш ControlSend&#039;ом, скрипт отпускает нажатые физически клавиши модификаторов (Ctrl, Alt, Shift и CapsLock), при этом, не затрагивая остальные клавиши.<br />Если при запущенном скрипте нажать CapsLock, то он начинает переключаться по своему усмотрению.<br />Можно ли заставить скрипт работать только с целевым окном, не затрагивая остальные.<br />Скрипт ниже вызывает у меня эти проблемы.<br /></p><div class="codebox"><pre><code>Run, Notepad.exe, , , Pid1
Run, Notepad.exe, , , Pid2
WinWaitActive, % &quot;ahk_pid &quot; Pid2
WinMove, % A_ScreenWidth/4, % A_ScreenHeight/4
WinMove, % &quot;ahk_pid &quot; Pid1, , % A_ScreenWidth/5, % A_ScreenHeight/5
ControlSetText, , В этом окне блокнота при помощи Ctrl+A или Shift+Left \ Right попытаться выделить текст., % &quot;ahk_pid &quot; Pid2
While WinActive(&quot;ahk_pid&quot; Pid2) {
ControlSend, , {sc1E}{scE}, % &quot;ahk_pid &quot; Pid1 ; sc1E - a, scE - BackSpace.
Sleep 10
}
Process, Close, % Pid1
Process, Close, % Pid2</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Nikva]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27416</uri>
			</author>
			<updated>2015-11-30T10:09:04Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=99391#p99391</id>
		</entry>
</feed>
