<?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=18248</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=18248&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Исполнение кода из стороннего файла».]]></description>
		<lastBuildDate>Mon, 15 Jul 2024 13:19:43 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Исполнение кода из стороннего файла]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=161258#p161258</link>
			<description><![CDATA[<p>Этот цикл<br /></p><div class="codebox"><pre><code>While DllCall(dllpath . &quot;\ahkReady&quot;) {
    Sleep 100
}</code></pre></div><p>нужен только для того, чтобы основной скрипт не завершился раньше, чем тот, который запускается через dll. Вместо этого можно просто добавить в начало #Persistent:<br /></p><div class="codebox"><pre><code>#Persistent
script =
(
    #NoTrayIcon
    counter := 0
    Loop 30 {
        ToolTip `% ++counter
        Sleep 100
    }
)

; битность dll должна соответствовать битности скрипта, в котором она загружается
dllPath := A_ScriptDir . &quot;\AutoHotkey.dll&quot;
if !DllCall(&quot;LoadLibrary&quot;, &quot;Str&quot;, dllpath) {
    MsgBox Не удалось загрузить AutoHotkey.dll
}
DllCall(dllpath . &quot;\ahktextdll&quot;, &quot;Str&quot;, script, &quot;Str&quot;, &quot;&quot;, &quot;CDecl&quot;)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 15 Jul 2024 13:19:43 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=161258#p161258</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Исполнение кода из стороннего файла]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=161257#p161257</link>
			<description><![CDATA[<p>Я уже не пишу на AHK v1, лень разбираться.<br />Должно быть так:<br /></p><div class="codebox"><pre><code>script =
(
    #NoTrayIcon
    counter := 0
    Loop 30 {
        ToolTip `% ++counter
        Sleep 100
    }
)

; битность dll должна соответствовать битности скрипта, в котором она загружается
dllPath := A_ScriptDir . &quot;\AutoHotkey.dll&quot;
if !DllCall(&quot;LoadLibrary&quot;, &quot;Str&quot;, dllpath) {
    MsgBox Не удалось загрузить AutoHotkey.dll
}
DllCall(dllpath . &quot;\ahktextdll&quot;, &quot;Str&quot;, script, &quot;Str&quot;, &quot;&quot;, &quot;CDecl&quot;)
While DllCall(dllpath . &quot;\ahkReady&quot;) {
    Sleep 100
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 15 Jul 2024 13:15:16 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=161257#p161257</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Исполнение кода из стороннего файла]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=161255#p161255</link>
			<description><![CDATA[<p><strong>teadrinker</strong></p><p>! Проблему решил, нужно было просто вынести LoadLibrary за цикл !</p><br /><br /><p>При запуске этого кода на AHK_H выдает ошибки (Exit code: 3221226525, Exit code: 3221225477, Exit code: 3221226356):</p><div class="codebox"><pre><code>
#SingleInstance Force

Loop {
	FileRead, Read, test.txt
	if RegExMatch(Read, &quot;123&quot;) {
		dllpath := A_WorkingDir . &quot;\AutoHotkey.dll&quot;
		DllCall(&quot;LoadLibrary&quot;, &quot;Str&quot;, dllpath)
		Code =
		(
		#SingleInstance, Force
		
		Function_Run() {
			SoundBeep, 500
		}

		Function_Run()
		While DllCall(dllpath &quot;\ahkReady&quot;) {
			Sleep, 100
		}
		)
		dll := DllCall(dllpath &quot;\ahktextdll&quot;,&quot;Str&quot;,Code,&quot;Str&quot;,&quot;&quot;,&quot;Str&quot;,&quot;&quot;,&quot;CDecl&quot;)
		VarSetCapacity(dll, 0)
		FileDelete, test.txt
		continue
	}
}

-::
FileAppend, 123, test.txt
return
</code></pre></div><p>Не знаете, в чем может быть дело? (ошибка появляется после 2-5 запуска нового потока)</p>]]></description>
			<author><![CDATA[null@example.com (Ladanu_ML)]]></author>
			<pubDate>Mon, 15 Jul 2024 12:09:11 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=161255#p161255</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Исполнение кода из стороннего файла]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=161254#p161254</link>
			<description><![CDATA[<p>Спасибо, щас попробую)</p>]]></description>
			<author><![CDATA[null@example.com (Ladanu_ML)]]></author>
			<pubDate>Sun, 14 Jul 2024 13:10:51 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=161254#p161254</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Исполнение кода из стороннего файла]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=161253#p161253</link>
			<description><![CDATA[<p>Да, возможно через AutoHotkey.dll, гуглите.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Sun, 14 Jul 2024 12:35:26 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=161253#p161253</guid>
		</item>
		<item>
			<title><![CDATA[AHK: Исполнение кода из стороннего файла]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=161252#p161252</link>
			<description><![CDATA[<p>Добрый день.<br />Возможно ли в AHK исполнение кода из стороннего файла? (Имеется ввиду чтение некоторого кода из файла и исполнение его в рабочем (если возможно, то в скомпилированном) скрипте).</p>]]></description>
			<author><![CDATA[null@example.com (Ladanu_ML)]]></author>
			<pubDate>Sun, 14 Jul 2024 12:06:54 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=161252#p161252</guid>
		</item>
	</channel>
</rss>
