<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK:  Перезапуск скрипта]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=8851&amp;type=atom" />
	<updated>2017-01-14T12:00:49Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=8851</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Перезапуск скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=111037#p111037" />
			<content type="html"><![CDATA[<p>Делайте как в примере: горячая клавиша должна задаваться командой <em>Hotkey</em>, а не двоеточием.<br /></p><div class="quotebox"><cite>Дед Мазай пишет:</cite><blockquote><p><span style="color: navy"><strong>Hotkey, IfWinActive, ahk_class Notepad<br />Hotkey, ^!e, MyLabel </strong></span></p></blockquote></div><p>Соответственно выполняемые действия нужно загнать в подпрограмму. Подпрограмма оформляется так:</p><div class="codebox"><pre><code>MyLabel:    ;название
SoundBeep   ;нужные
MsgBox      ;действия
Return      ;команда возврата</code></pre></div>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2017-01-14T12:00:49Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=111037#p111037</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Перезапуск скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=111034#p111034" />
			<content type="html"><![CDATA[<p>Подскажите: правильно ли я написал? </p><div class="codebox"><pre><code>#UseHook On
Hotkey, IfWinActive, ahk_class AfxMDIFrame100u

{vk20::	;пробел
    KeyWait, vk20, T0.3
    If (ErrorLevel = 0)
        Send, {vk20}
    Else {
        Send, {MButton down}
        KeyWait, vk20
        Send, {MButton up}
    }
    Return
}
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[dm.tr.y]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=34072</uri>
			</author>
			<updated>2017-01-14T11:13:31Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=111034#p111034</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Перезапуск скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=111029#p111029" />
			<content type="html"><![CDATA[<p><strong>dm.tr.y</strong>, да, для Ваших целей должна подойти команда <strong>Hotkey, IfWinXX [, WinTitle, WinText]</strong>. В той же статье объясняется, почему при автозапуске не работает директива #IfWinActive: потому что в этот момент целевое окно просто не существует.<br />Мой скрипт просто для теста, правильнее использовать команду <em>Hotkey, IfWinXX</em>.</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2017-01-14T09:14:31Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=111029#p111029</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Перезапуск скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=111027#p111027" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>ypppu пишет:</cite><blockquote><p>Почитайте в переводе документации вот это статью:</p></blockquote></div><p>Читал про нее еще до того, как обратился к вам за помощью, но из-за отсутствия знаний&nbsp; в автохоткей не могу понять - что из этого следует: или есть другая альтернативная команда, или надо использовать &quot;IfWinActive&quot; по вашему методу?<br />Если честно, то у меня не лежит душа к предложенному вами варианту. Он усложняет для моего понимания скрипт и мне уже тяжело им оперировать.</p><p>Может все таки есть возможность сделать команду Reload при запуске автокада &quot;ahk_class AfxMDIFrame100u&quot;?</p><p>Что интересно: изначальный скрипт, после запуска виндовс, частично работает с программой (некоторые клавишы), но похоже не срабатывает IfWinActive. И если после запуска виндовс, но до запуска программы сделать релоад вручную, то запуская потом программу он работает как надо.</p>]]></content>
			<author>
				<name><![CDATA[dm.tr.y]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=34072</uri>
			</author>
			<updated>2017-01-14T09:00:19Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=111027#p111027</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Перезапуск скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=111012#p111012" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>dm.tr.y пишет:</cite><blockquote><p>А подскажите - как это можно реализовать? <strong>к</strong> сожалению не силен в autohotkey.</p></blockquote></div><p> Ошибка тут, остальные не смотрел.</p><br /><p>Готовый скрипт по назначению <strong>HotKey</strong>.</p><div class="codebox"><pre><code>;Тут только OK
  сMsgBoxInfo_Ok          :=0+8192+64       ;only an OK button + Task Modal + Icon Asterisk(info)
  сMsgBoxError_Ok         :=0+8192+16       ;only an OK button + Task Modal + Icon Hand (stop/error)  
  сMsgBoxChoice_Ok        :=0+8192+48       ;only an OK button + Task Modal + Icon Exclamation
  
fnHotkey(KeyIn, LabelIn:=&quot;lNotLabel&quot;, OnOff:=True)
{
Global    ;Глобальне переменные доступны
  StatusIn  := &quot;Off&quot;
  If (OnOff)
        StatusIn  := &quot;On&quot;

  HotKey %KeyIn%,%LabelIn%, %StatusIn%, UseErrorLevel  ; Включение/Выключение HotKey
  MyErrorLevel := ErrorLevel
  If (LabelIn = &quot;lNotLabel&quot;)
              MyErrorLevel := 100
  If (MyErrorLevel != 0)
      {
        сHotKeyStrErr := &quot;HotKey&quot; &quot;  &quot; KeyIn &quot;, &quot; LabelIn 
        If (MyErrorLevel = 1)
                Error_TXT := &quot;В параметре Label указано несуществующее имя метки.&quot;
        If (MyErrorLevel = 2)
                Error_TXT := &quot;Дубликат горячих клавиш или они не поддерживаются системой.&quot;
        If (MyErrorLevel = 3)
                Error_TXT := &quot;Неподдерживаемый модификатор горячей клавиши.&quot;
        If (MyErrorLevel = 4)
                Error_TXT := &quot;Клавиши не пригодны для эмуляции AltTab или ShiftAltTab.&quot;
        If (MyErrorLevel = 5)
                Error_TXT := &quot;Команда пытается изменить несуществующую горячую клавишу.&quot;
        If (MyErrorLevel = 6)
                Error_TXT := &quot;Команда пытается изменить несуществующий вариант существующей горячей клавиши.&quot;
        If (MyErrorLevel = 98)
                Error_TXT := &quot;Создание данной горячей клавиши превысило лимит в 700 горячих клавиш.&quot;
        If (MyErrorLevel = 99)
                Error_TXT := &quot;Недостаточно памяти. Ваша OS нестабильна, требуется очистка и настройка.&quot;
        If (MyErrorLevel = 100)
                Error_TXT := &quot;Назначение метки lNotLabel недопустимо, она зарезервирована програмой.&quot;
        If (MyErrorLevel &gt; 100)
                Error_TXT := &quot;Не известная ошибка.&quot;
              
        cTitle      :=  &quot;Ошибка в HotKey&quot;
        cMsgErr     :=  &quot;`n Ошибка в определении - &quot; сHotKeyStrErr
        cTxtErrAd1  :=  &quot;`n`n Тип ошибки :&quot;
        cTxtErrAd2  :=  &quot;`n &quot; Error_TXT
        cWait       :=  15
        cTxtErrAd3  :=  &quot;`n`n Выход из программы(Тайм-аут = &quot; cWait &quot; сек).&quot;
        MsgBox % сMsgBoxError_Ok, %cTitle%, %cMsgErr% %cTxtErrAd1% %cTxtErrAd2% %cTxtErrAd3%, %cWait%      
        ExitApp
      }
Return
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Indomito]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27285</uri>
			</author>
			<updated>2017-01-13T19:26:54Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=111012#p111012</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Перезапуск скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=110987#p110987" />
			<content type="html"><![CDATA[<p>Ну если хоть как-то начал работать, значит на виндовс 7 автозапуск ничем не отличается от моего XP. Пошли дальше.</p><p>Почитайте в переводе документации вот это статью:<br /></p><div class="quotebox"><cite>Дед Мазай пишет:</cite><blockquote><h5><span style="color: black">Hotkey</span></h5><p>...<br /><strong>Примечания к Hotkey, IfWinXX [, WinTitle, WinText]</strong><br />В версиях 1.0.42 и более поздних команда &quot;Hotkey IfWin&quot; позволяет создавать или изменять контекстнозависимые горячие клавиши в то время, когда скрипт уже запущен (в отличие от директивы #IfWinActive/Exist, которая используется для задания условий горячим клавишам непосредственно при запуске скрипта).</p></blockquote></div><p>Скорее всего это и есть ответ на вопрос.</p><br /><p><span style="color: green"><strong>dm.tr.y</strong>, второй раз предупреждаю про заглавные буквы.</span></p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2017-01-13T10:30:28Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=110987#p110987</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Перезапуск скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=110986#p110986" />
			<content type="html"><![CDATA[<p>Сработало, спасибо. Надо обдумать - как лучше реализовать.<br />А если у меня около 10 таких комбинаций, получается мне надо отдельно для каждой делать такое условие? Или я могу сделать одно условие для всех комбинаций?</p>]]></content>
			<author>
				<name><![CDATA[dm.tr.y]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=34072</uri>
			</author>
			<updated>2017-01-13T10:17:28Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=110986#p110986</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Перезапуск скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=110985#p110985" />
			<content type="html"><![CDATA[<p>В Вашем случае<br /></p><div class="codebox"><pre><code>
Hotkey, vk20, MyLabel, Off
Loop
{
IfWinActive, ahk_class AfxMDIFrame100u
Hotkey, vk20, On
Else Hotkey, vk20, Off
Sleep, 300
}


MyLabel:
KeyWait, vk20, T0.3
If (ErrorLevel = 0)
	Send, {vk20}
Else
	{
	Send, {MButton down}
	KeyWait, vk20
	Send, {MButton up}
	}
Return
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2017-01-13T09:55:19Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=110985#p110985</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Перезапуск скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=110979#p110979" />
			<content type="html"><![CDATA[<p>К сожалению очень далек от скриптования в Autohotkey. <br />Вы не могли бы показать это на моем примере, если возможно? Тогда мне было бы понятно, как подкорректировать под себя. Заранее спасибо.</p>]]></content>
			<author>
				<name><![CDATA[dm.tr.y]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=34072</uri>
			</author>
			<updated>2017-01-13T09:05:34Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=110979#p110979</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Перезапуск скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=110978#p110978" />
			<content type="html"><![CDATA[<p>Вот простой пример.<br /></p><div class="codebox"><pre><code>Hotkey, F1, MyLabel, Off
Loop
{
IfWinActive, AutoHotkey Script.ahk - Блокнот
Hotkey, F1, On
Else Hotkey, F1, Off
Sleep, 300
}

MyLabel:
Soundbeep
Return</code></pre></div><br /><p><span style="color: green"><strong>dm.tr.y</strong>, у нас не чат, добавьте заглавные буквы и точки в предыдущее сообщение.</span></p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2017-01-13T08:46:54Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=110978#p110978</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Перезапуск скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=110973#p110973" />
			<content type="html"><![CDATA[<p>А подскажите - как это можно реализовать? К сожалению, не силен в autohotkey.</p>]]></content>
			<author>
				<name><![CDATA[dm.tr.y]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=34072</uri>
			</author>
			<updated>2017-01-13T08:19:10Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=110973#p110973</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Перезапуск скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=110971#p110971" />
			<content type="html"><![CDATA[<p>Попробуйте вместо директивы <em>#IfWinActive</em> периодически проверять командой <em>IfWinActive</em> существование окна. И, если условие выполнено, задействовать ГК vk20.</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2017-01-13T08:14:16Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=110971#p110971</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Перезапуск скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=110957#p110957" />
			<content type="html"><![CDATA[<p>Добрый день. <br />Сделал скрипт простейший с заменой комбинаций клавиш для конкретной программы. При запуске скрипта и потом программы - скрипт работает. Закинул скрипт в автозагрузку (виндовс 7), он запускается и висит в трее при включении компьютера, но при запуске программы комбинации клавиш не работают, приходится вручную лезть в трей и делать Релоад, после этого опять все работает. Пробывал для программы автохоткей в свойствах ставить запуск с правами админа - не помогает. причина так и не ясна.</p><p>Подскажите: как в скрипт вписать Reload при запуске определенной программы (автокада)<br />или может кто знает почему не срабатывает скрипт?</p><p>Сам скрипт:<br /></p><div class="codebox"><pre><code>
#UseHook On
#IfWinActive ahk_class AfxMDIFrame100u

vk20::
    KeyWait, vk20, T0.3
    If (ErrorLevel = 0)
        Send, {vk20}
    Else {
        Send, {MButton down}
        KeyWait, vk20
        Send, {MButton up}
    }
    Return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[dm.tr.y]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=34072</uri>
			</author>
			<updated>2017-01-13T07:11:36Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=110957#p110957</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Перезапуск скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=76815#p76815" />
			<content type="html"><![CDATA[<p>Я думал, что она действует только для не откомпилированных скрипов, т.е. опираясь на AutoHotkey.exe, т.е. срабатывает в конструкции типа </p><div class="codebox"><pre><code>AutoHotkey.exe test.AHK</code></pre></div><p>Я уже &quot;<em>обиспользвался&quot;</em> методом <em>&quot;научного тыка&quot;</em> при создании подменю в трее и мне не очень бы хотелось такого повторения. <img src="//forum.script-coding.com/img/smilies/wink.png" width="15" height="15" /></p>]]></content>
			<author>
				<name><![CDATA[Indomito]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27285</uri>
			</author>
			<updated>2013-11-02T08:09:38Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=76815#p76815</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Перезапуск скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=76814#p76814" />
			<content type="html"><![CDATA[<p>Попробуйте такой скрипт: <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /><br /></p><div class="codebox"><pre><code>F2:: Reload</code></pre></div>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2013-11-02T08:06:36Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=76814#p76814</id>
		</entry>
</feed>
