<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; Перехват нажатия клавиш, и подобных действий управления]]></title>
	<link rel="self" href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=9945&amp;type=atom" />
	<updated>2014-09-11T17:26:06Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.script-coding.com/viewtopic.php?id=9945</id>
		<entry>
			<title type="html"><![CDATA[Re: Перехват нажатия клавиш, и подобных действий управления]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=86400#p86400" />
			<content type="html"><![CDATA[<p>Я с подобными проблемами не сталкивался, т.е. во всех играх исправно работает перехват или же как LAII при запуске клиента он вылетает с ошибкой - это защита от ботов.</p>]]></content>
			<author>
				<name><![CDATA[Indomito]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=27285</uri>
			</author>
			<updated>2014-09-11T17:26:06Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=86400#p86400</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Перехват нажатия клавиш, и подобных действий управления]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=86384#p86384" />
			<content type="html"><![CDATA[<p>Увы, и этой опции нету <img src="//forum.script-coding.com/img/smilies/sad.png" width="15" height="15" /><br />P.S. То есть средствами AHK сию проблему не исправить?</p>]]></content>
			<author>
				<name><![CDATA[NektoN95]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=32518</uri>
			</author>
			<updated>2014-09-10T15:23:29Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=86384#p86384</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Перехват нажатия клавиш, и подобных действий управления]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=86370#p86370" />
			<content type="html"><![CDATA[<p>Отключи в игре &quot;Аппаратное управление курсором&quot;, иногда помогает</p>]]></content>
			<author>
				<name><![CDATA[Indomito]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=27285</uri>
			</author>
			<updated>2014-09-09T15:26:38Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=86370#p86370</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Перехват нажатия клавиш, и подобных действий управления]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=86304#p86304" />
			<content type="html"><![CDATA[<p>В винде действует (т.е блокирует действие колесика), в игре нет - выполняет макрос, но игра продолжает &quot;чувствовать&quot; колесико.</p>]]></content>
			<author>
				<name><![CDATA[NektoN95]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=32518</uri>
			</author>
			<updated>2014-09-06T02:17:37Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=86304#p86304</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Перехват нажатия клавиш, и подобных действий управления]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=86299#p86299" />
			<content type="html"><![CDATA[<p>Что вообще и ни где не действует? Или только в игре? <br />P.S. В контексте мышкиных кнопок.</p>]]></content>
			<author>
				<name><![CDATA[Indomito]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=27285</uri>
			</author>
			<updated>2014-09-05T18:19:00Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=86299#p86299</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Перехват нажатия клавиш, и подобных действий управления]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=86285#p86285" />
			<content type="html"><![CDATA[<p>Скрипт действует на кнопки клавиатуры, но не на мышь. И она не програмируемая.</p>]]></content>
			<author>
				<name><![CDATA[NektoN95]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=32518</uri>
			</author>
			<updated>2014-09-04T03:58:07Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=86285#p86285</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Перехват нажатия клавиш, и подобных действий управления]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=86281#p86281" />
			<content type="html"><![CDATA[<p>Проверь по аналогии отключение любых других клавиш с помощью скрипта.</p><p>Если мышь программируемая, то переопредели WheelUp/WheelDown на другие клавиши, если игра продолжит реагировать на колёсико, то надо думать что ещё можно изобразить <img src="//forum.script-coding.com/img/smilies/wink.png" width="15" height="15" /></p>]]></content>
			<author>
				<name><![CDATA[Indomito]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=27285</uri>
			</author>
			<updated>2014-09-03T18:01:41Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=86281#p86281</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Перехват нажатия клавиш, и подобных действий управления]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=86280#p86280" />
			<content type="html"><![CDATA[<p>Увы, не помогает, игра продолжает реагировать на колесико.</p>]]></content>
			<author>
				<name><![CDATA[NektoN95]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=32518</uri>
			</author>
			<updated>2014-09-03T16:35:32Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=86280#p86280</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Перехват нажатия клавиш, и подобных действий управления]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=86247#p86247" />
			<content type="html"><![CDATA[<div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header"><strong>+</strong>&nbsp;Запуск игры из скрипта</div><div class="fancy_spoiler"><div class="codebox"><pre><code>; Запуск игры   
lStartlGame:
  If (WinExist(vWinName))
          Return ; Игра уже запущена - только релоад скрипта

  Run, %vRunTarget%, %vRunWorkDir%, UseErrorLevel, OutputVarPID
   if A_LastError ; 0 (False) если всё верно и будем обрабатывать дальше
        { 
          vRunErr := True ; Ошибка запуска
        }
      Else
        {
          WinWait, ahk_pid%OutputVarPID%,, 7 ; ждём 7 секунд до старта  
          if ErrorLevel
            {
              vRunErr := True ; Истекло время ожидания.
            }
        }
    if vRunErr
        Gosub lEndGame
Return</code></pre></div></div></div><p> Переменные <strong>vRunTarget</strong> и&nbsp; <strong>vRunWorkDir</strong> передаются скрипту извне или из реестра или из ini-файла</p>]]></content>
			<author>
				<name><![CDATA[Indomito]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=27285</uri>
			</author>
			<updated>2014-09-02T14:22:11Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=86247#p86247</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Перехват нажатия клавиш, и подобных действий управления]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=86234#p86234" />
			<content type="html"><![CDATA[<p><strong>NektoN95</strong><br />Начну с конца... так проще<br /></p><div class="quotebox"><blockquote><p>P.S. <strong>teadrinker</strong>, вопрос ведь по-сути технический, и к играм имеет весьма косвенное отношение...</p></blockquote></div><p> <strong>teadrinker</strong> тут не причём, вопрос к админу, а не к модератору - читай почту, я там всё пояснил, только не дал линк на ветку где задать твой вопрос... мне данная ситуация не нравится, а мотивация не понятна, но <strong>teadrinker</strong> тут не причём и ответ он не даст.</p><p><strong>Техническая часть</strong> Вот скрипт который решит твою проблему </p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header"><strong>+</strong>&nbsp;То что ты просил...</div><div class="fancy_spoiler"><div class="codebox"><pre><code>;Инициализация, сначала должна быть запущена игра, а потом скрипт
;Возможно запустить из скрипта сам игру, но этот фрагмет отсутствует, т.к. он большой
#Persistent                 ;Скрипт не выгружается
#SingleInstance             ;Запрет повторного запуска
OnExit, lEndGame            ;Точка завершения скрипта
SetTitleMatchMode, 1        ;Заголовок окна должен начинаться со значения, заданного в vWinName 
  vWinName    := &quot;название игры - первое слово&quot;
  cActiveGame :=  1000 * 5  ; Частота работы таймера для проверки в секундах - приблизительно не менее 3 и не более 7
SetTimer  lTimerActive, %cActiveGame%
Return

lEndGame:
  ExitApp

lTimerActive:
  If (!WinExist(vWinName))
    Gosub lEndGame ; Игры нет - выгружаем скрипт
Return
    
#UseHook, On
;Блок работает пока игра активна
;При сворацивании окна игры колёсико будет работать как ему положено
#If WinActive(vWinName) 
;****************************************    
WheelUp::
Return

WheelDown::
Return
;****************************************
#UseHook, Off
#IfWinActive</code></pre></div></div></div><p>Скрипт написан по принципу <em>&quot;От общего к частному&quot;</em>, т.е. его легко расширить/дополнить, а так же убрать не нужное, например таймер проверки существования окна игры</p><p>В этом скрипте таймер делает только одну вещь, а у меня в аналогичной ситуации - множество, около 8-ми проверок и подключает/отключает <strong>WheelUp</strong>/<strong>WheelDown</strong> по таймеру используя команду <strong>HotKey</strong> на основе данных из ini-файла.</p><p>Ну, а блок </p><div class="codebox"><pre><code>#If WinActive(vWinName)
//.....
#IfWinActive</code></pre></div><p> вообще отсутствует - клавиши задаются динамически.</p>]]></content>
			<author>
				<name><![CDATA[Indomito]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=27285</uri>
			</author>
			<updated>2014-09-02T06:11:14Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=86234#p86234</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Перехват нажатия клавиш, и подобных действий управления]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=86232#p86232" />
			<content type="html"><![CDATA[<p>Есть игра, которая реагирует на движение колесика вперед-назад. Нужно сделать так, чтобы мой скрипт реагировал на движения колесика, а игра - нет. Как это сделать? Снять действия с колесика в игре не возможно - нет соответствующих опций ни в самой игре, ни в её ini-файлах - игра была портирована с Xbox на PC, причем весьма грубо.</p><p>P.S. <strong>teadrinker</strong>, вопрос ведь по-сути технический, и к играм имеет весьма косвенное отношение...</p>]]></content>
			<author>
				<name><![CDATA[NektoN95]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=32518</uri>
			</author>
			<updated>2014-09-02T05:41:54Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=86232#p86232</id>
		</entry>
</feed>
