<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: Нестандартное использование DLLCall]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=11251&amp;type=atom" />
	<updated>2016-01-21T19:19:30Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=11251</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Нестандартное использование DLLCall]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=100587#p100587" />
			<content type="html"><![CDATA[<p>Это читается адрес функции, реализующей какой-то метод в интерфейсе какого-то COM-объекта. Эти адреса хранятся в списке (VTable), отсюда и смещение до нужного. Непосредственно по указателю на объект (this) расположен указатель на этот самый VTable. Т.е.<br /></p><div class="codebox"><pre><code>
pVTable := NumGet(pObject)
pFunc := NumGet(pVTable + Offset)
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[YMP]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=81</uri>
			</author>
			<updated>2016-01-21T19:19:30Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=100587#p100587</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AHK: Нестандартное использование DLLCall]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=100585#p100585" />
			<content type="html"><![CDATA[<p>Не первый раз натыкаюсь на запись такого вида:<br /></p><div class="codebox"><pre><code>DllCall(NumGet(NumGet(this+0)+3*A_PtrSize)...</code></pre></div><p>Что это за DLLка? Или это адрес в память? Если адрес, то какого процесса?<br />Пример:<br /></p><div class="codebox"><pre><code>VA_ISimpleAudioVolume_SetMasterVolume(this, ByRef fLevel, GuidEventContext=&quot;&quot;) {
    return DllCall(NumGet(NumGet(this+0)+3*A_PtrSize), &quot;ptr&quot;, this, &quot;float&quot;, fLevel, &quot;ptr&quot;, VA_GUID(GuidEventContext))
}
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Alectric]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26027</uri>
			</author>
			<updated>2016-01-21T18:58:56Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=100585#p100585</id>
		</entry>
</feed>
