<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: Регистрация скомпилированного скрипта в качестве службы]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=11411</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=11411&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Регистрация скомпилированного скрипта в качестве службы».]]></description>
		<lastBuildDate>Thu, 17 Mar 2016 21:12:10 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Регистрация скомпилированного скрипта в качестве службы]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=101915#p101915</link>
			<description><![CDATA[<p><span style="color: green"><strong>chippp</strong>, ознакомьтесь с <a href="http://forum.script-coding.com/viewtopic.php?id=6148">этой</a> темой, отредактируйте свои посты.</span></p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Thu, 17 Mar 2016 21:12:10 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=101915#p101915</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регистрация скомпилированного скрипта в качестве службы]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=101911#p101911</link>
			<description><![CDATA[<p>Ну и для дополнения тут<br /><a href="https://autohotkey.com/board/topic/32023-service-function-set-for-handling-windows-services/page-2">https://autohotkey.com/board/topic/3202 … ces/page-2</a></p>]]></description>
			<author><![CDATA[null@example.com (chippp)]]></author>
			<pubDate>Thu, 17 Mar 2016 19:26:16 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=101911#p101911</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регистрация скомпилированного скрипта в качестве службы]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=101909#p101909</link>
			<description><![CDATA[<p>Тут вполне рабочий пример <br /><a href="https://autohotkey.com/board/topic/66688-ahk-as-a-service/%20">https://autohotkey.com/board/topic/6668 … -service/ </a></p>]]></description>
			<author><![CDATA[null@example.com (chippp)]]></author>
			<pubDate>Thu, 17 Mar 2016 19:18:50 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=101909#p101909</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регистрация скомпилированного скрипта в качестве службы]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=101903#p101903</link>
			<description><![CDATA[<p>Присоединяюсь к вопросу, нашел интересное описание <a href="http://www.achatfs.narod.ru/create_services_api.html">http://www.achatfs.narod.ru/create_services_api.html</a> осталось разобраться но в этом не силен.</p>]]></description>
			<author><![CDATA[null@example.com (chippp)]]></author>
			<pubDate>Thu, 17 Mar 2016 18:40:44 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=101903#p101903</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регистрация скомпилированного скрипта в качестве службы]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=101850#p101850</link>
			<description><![CDATA[<p>А почему бы просто не создать в планировщике задачу с триггером при запуске/входе в систему/блокировании раб. станции?</p>]]></description>
			<author><![CDATA[null@example.com (Flasher)]]></author>
			<pubDate>Tue, 15 Mar 2016 04:25:34 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=101850#p101850</guid>
		</item>
		<item>
			<title><![CDATA[AHK: Регистрация скомпилированного скрипта в качестве службы]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=101849#p101849</link>
			<description><![CDATA[<p>Задался таким вопросом... Есть скомпилированный скрипт, функционал которого меня полностью устраивает. Не хватает только &quot;одной мелочи&quot;, которая обсуждалась уже 100500 раз. Необходима реакция на хоткей до входа в систему. Много разговоров велось о том, что можно запустить такой скомпилированный в exe-шник скрипт, в качестве win-службы.</p><p>Всё бы ничего, но только регистрация службы при помощи посредников(ака servany, runassvc....) не даёт ничего, потому как запущенная служба не реагирует на хоткеи даже на рабочем столе, а не то, что в процессе логона.</p><p>Запуск же службы прямым указанием на мой exe-шник, оборачиваетcя ошибкой 1053. Погуглив, понял, что exe-шник работающий в качестве службы, должен иметь специальные директивы, на основании которых он и опознаётся как &quot;правильная служба&quot;. В противном же случае, Windows грохает процесс.</p><p>Я так же уже ознакомился с тем, что начиная с Win Vista, службы не могут иметь GUI, однако мой скрипт в нём и не нуждается. Полагаю, что есть ограничение и на взаимодействия через клавиатуру(в нашем случае через хоткеи). Это так?</p><p>Вот здесь:<br /><a href="https://autohotkey.com/boards/viewtopic.php?f=5&amp;t=5894&amp;p=76017#p76017">https://autohotkey.com/boards/viewtopic … 017#p76017</a><br />я нашёл пример скрипта, в котором как я понимаю обрабатываются указанные выше директивы:<br /></p><div class="codebox"><pre><code>CreateService(lpServiceName,lpDisplayName,lpBinaryPathName,dwServiceType=&quot;0x10&quot;,dwStartType=&quot;0x2&quot;,dwErrorControl=&quot;0x0&quot;)
{
	/*
	;------------dwServiceType--------------------
	0x00000001 ;SERVICE_KERNEL_DRIVER
	0x00000002 ;SERVICE_FILE_SYSTEM_DRIVER
	0x00000010 ;SERVICE_WIN32_OWN_PROCESS
	0x00000020 ;SERVICE_WIN32_SHARE_PROCESS
	;------------------------------------------------
 
	;------------dwStartType-----------------------
	0x00000000 ;SERVICE_BOOT_START
	0x00000001 ;SERVICE_SYSTEM_START
	0x00000002 ;SERVICE_AUTO_START
	0x00000003 ;SERVICE_DEMAND_START
	;------------------------------------------------
 
	;------------dwErrorControl-----------------------
	0x00000000 ;SERVICE_ERROR_IGNORE
	0x00000001 ;SERVICE_ERROR_NORMAL
	0x00000002 ;SERVICE_ERROR_SEVERE
	0x00000003 ;SERVICE_ERROR_CRITICAL
	;------------------------------------------------
	*/	
	SC_MANAGER_CREATE_SERVICE := 0x0002
	SERVICE_ALL_ACCESS := 0xF01FF
	hSC := DllCall(&quot;Advapi32\OpenSCManager&quot;,&quot;Uint&quot;,0,&quot;Uint&quot;,0,&quot;Uint&quot;,SC_MANAGER_CREATE_SERVICE,&quot;Uint&quot;)
	if not hSC
	{
		ErrorLevel := -1
		return,A_LastError
	}
	hCS := DllCall(&quot;Advapi32\CreateService&quot;,&quot;Uint&quot;,hSC
	,&quot;Str&quot;,lpServiceName
	,&quot;Str&quot;,lpDisplayName
	,&quot;Uint&quot;,SERVICE_ALL_ACCESS 								
	,&quot;Uint&quot;,dwServiceType
	,&quot;Uint&quot;,dwStartType
	,&quot;Uint&quot;,dwErrorControl
	,&quot;Str&quot;,lpBinaryPathName
	,&quot;Uint&quot;,0
	,&quot;Uint&quot;,0
	,&quot;Uint&quot;,0
	,&quot;Uint&quot;,0
	,&quot;Uint&quot;,0
	,&quot;Uint&quot;)
	if not hCS
	{
		DllCall(&quot;Advapi32\CloseServiceHandle&quot;,&quot;Ptr&quot;,hSC)
		ErrorLevel := -2
		return,A_LastError
	}	
	DllCall(&quot;Advapi32\CloseServiceHandle&quot;,&quot;Ptr&quot;,hSC)
	DllCall(&quot;Advapi32\CloseServiceHandle&quot;,&quot;Ptr&quot;,hCS)
	ErrorLevel := 0
	return
}</code></pre></div><p>однако вставка этого кода в начало моего скрипта ничем не помогает..(((</p><p>Уже давно отказался бы от этой навязчивой идеи... но вот загвоздка... ))) по интернету полно примеров скриптов AHK, которые будто бы всё же запускаются как службы. И если кто то это делал, значит они всё-таки могут взаимодействовать через клавиатуру, иначе какой в этом смысл? В любом случае или кривые руки или устаревшие примеры(многие из примеров в сети были рассчитаны на XP и Win7), мне же нужен рабочий вариант для Win8.1 и Win10.</p><p>Может ли кто-то что-нибудь подсказать по этой теме? Был бы весьма признателен....</p>]]></description>
			<author><![CDATA[null@example.com (taravasya)]]></author>
			<pubDate>Tue, 15 Mar 2016 03:12:49 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=101849#p101849</guid>
		</item>
	</channel>
</rss>
