<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523859</guid>
        <pubDate>Fri, 26 Nov 2004 02:19:23 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523859</link>
        <description><![CDATA[Vasya2000: <div class="tag-mod"><div class="tag-mod__prefix">M</div><div class="tag-mod__body">Код перемещен в фак - <a class='tag-url' href='http&#58;//forum.sources.ru/index.php?&act=ST&f=18&t=73932' target='_blank'>Как использовать ReadProcessMemory</a>&nbsp; </div></div>]]></description>
        <author>Vasya2000</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523582</guid>
        <pubDate>Thu, 25 Nov 2004 16:45:50 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523582</link>
        <description><![CDATA[tmp: Под кривоватостью VB я подразумеваю его фактическую кривоватость как языка, требующую порой хитрых манипуляций от кодера, а в данном случае я конечно же признаю, что тут я стормозил, хотя странно, что мне не пришло это всё в голову... И не такое ещё порой вытворяли :P<br>Так, ща выложу код.....]]></description>
        <author>tmp</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523575</guid>
        <pubDate>Thu, 25 Nov 2004 16:38:15 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523575</link>
        <description><![CDATA[nash: <div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>Visual Basic кривоват</div></div><br>
<br>
Ничего личного, но кривоват обычно не бейсик :)<br>
Это опять не оскорбление :)]]></description>
        <author>nash</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523561</guid>
        <pubDate>Thu, 25 Nov 2004 16:19:28 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523561</link>
        <description><![CDATA[tmp: Опа&#33;.. Ё-моё, оказывается дело было в том, что адрес, т.е. как у тебя lVar, надо передавать byval... Ура, товарищи&#33; Visual Basic кривоват, но всесилен (почти=)), что и требовалось доказать... Пасибо тебе большое nash, был бы я зареген, я б тебе два плюса бы поставил&#33;<br>З.Ы. Блин, насчёт оскорбления я пошутил конечно (разве не видно)<br><br>Щас пойду поем, а потом выложу здесь полный работающий текст проги...]]></description>
        <author>tmp</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523516</guid>
        <pubDate>Thu, 25 Nov 2004 15:36:51 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523516</link>
        <description><![CDATA[nash: <div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>Вот на оскорбления типа &quot;пользователь&quot; не надо переходить </div></div><br>
<br>
Я и не думал оскорблять, но говорить надо конкретнее.<br>
<br>
Другое приложение<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">Option Explicit</div><div class="code_line">Private l As Long</div><div class="code_line">&nbsp;</div><div class="code_line">Private Sub Form_Load()</div><div class="code_line">&nbsp;&nbsp; &nbsp;l = 100</div><div class="code_line">&nbsp;&nbsp; &nbsp;Text1.Text = CStr(hWnd)</div><div class="code_line">&nbsp;&nbsp; &nbsp;Text2.Text = CStr(VarPtr(l))</div><div class="code_line">End Sub</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
<br>
Наше приложение<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;&nbsp; &nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp;Dim out As Long</div><div class="code_line">&nbsp;&nbsp; &nbsp;Dim procId As Long</div><div class="code_line">&nbsp;&nbsp; &nbsp;Dim procHandle As Long</div><div class="code_line">&nbsp;&nbsp; &nbsp;&#39;</div><div class="code_line">&nbsp;&nbsp; &nbsp;Dim lHwnd As Long</div><div class="code_line">&nbsp;&nbsp; &nbsp;Dim lVar As Long</div><div class="code_line">&nbsp;&nbsp; &nbsp;&#39;</div><div class="code_line">&nbsp;&nbsp; &nbsp;lHwnd = 1770340 &#39; Text1.Text </div><div class="code_line">&nbsp;&nbsp; &nbsp;lVar = 2005596 &nbsp;&#39; Text2.Text </div><div class="code_line">&nbsp;&nbsp; &nbsp;&#39;</div><div class="code_line">&nbsp;&nbsp; &nbsp;GetWindowThreadProcessId lHwnd, procId</div><div class="code_line">&nbsp;&nbsp; &nbsp;procHandle = OpenProcess(PROCESS_ALL_ACCESS, False, procId)</div><div class="code_line">&nbsp;&nbsp; &nbsp;Call ReadProcessMemory(procHandle, ByVal lVar, ByVal VarPtr(out), 4, 0&amp;)</div><div class="code_line">&nbsp;&nbsp; &nbsp;Debug.Print out &#39; out = 100</div><div class="code_line">&nbsp;&nbsp; &nbsp;CloseHandle procHandle</div></ol></div></div></div></div><br>
<br>
Тоже не работает ?]]></description>
        <author>nash</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523491</guid>
        <pubDate>Thu, 25 Nov 2004 15:23:41 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523491</link>
        <description><![CDATA[tmp: Хех.... Вот на оскорбления типа &quot;пользователь&quot; не надо переходить )) Тем более если не знаешь человека.<br>Кстати как раз программист, имхо, в данном случае *понял* бы, что &quot;не работает код&quot; в данном случае означает &quot;значение не записывается в буфер&quot;, но не будем...<br>Адрес я в данном случае узнаю с помощью проги ArtMoney, которая предназначена для взамывания игр путём изменения значений в памяти, соответствующих деньгам и т.п. Но эта прога также хорошо подходит для других целей ;)<br>Насчёт декларации я имел ввиду этот конкретный случай. Ещё раз говорю, тут дело видимо не в декларации.<br>Если брать твой код, я просто дописываю доступ к другому процессу, а в переменную l загоняю вместо 100 нужный адрес.<br>&quot;Коды возврата&quot; говорят, что работает всё кроме ReadProcessMemory.]]></description>
        <author>tmp</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523471</guid>
        <pubDate>Thu, 25 Nov 2004 15:05:18 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523471</link>
        <description><![CDATA[nash: <div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>На счёт декларации: это не важно... </div></div><br>
Я не знаю важно это или не важно, но от этого зависит как вызывать продекларированную функцию. Поэтому все таки ОЧЕНЬ ВАЖНО. Это было про варптр написано.<br>
<br>
А про другой процесс:<br>
- Как ты узнаешь по какому адресу надо читать ???<br>
- Как ты пишешь параметр функции этого адреса ???<br>
- Что значит не работает код ??? Так говорят пользователи. Программист говорит, ЧТО именно не работает. А доработать код, чтобы смотреть коды возврата и сказать какая именно функция не отрабатывает ?]]></description>
        <author>nash</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523453</guid>
        <pubDate>Thu, 25 Nov 2004 14:56:01 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523453</link>
        <description><![CDATA[tmp: Блин... этот код читает память в собственном процессе, а нужно в другом. Если переписать этот код на чтение в другом процессе, он не работает.<br>На счёт декларации: это не важно... тут проблема не в декларации. Хотя, кстати, спасибо за код, потому что я понял одну вещь: тут проблема в обращении к другому процессу, ведь в своём работает нормально...]]></description>
        <author>tmp</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523309</guid>
        <pubDate>Thu, 25 Nov 2004 13:24:20 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523309</link>
        <description><![CDATA[nash: <div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>Ребят, не работает ваш код  Проверьте плиз на практике... </div></div><br>
<br>
Все работает. Юзай лучше :)<br>
<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">Option Explicit</div><div class="code_line">&nbsp;</div><div class="code_line">Private Declare Function FindWindow Lib &quot;user32&quot; Alias &quot;FindWindowA&quot; (ByVal lpClassName As String, ByVal lpWindowName As String) As Long</div><div class="code_line">Private Declare Function GetWindowThreadProcessId Lib &quot;user32&quot; (ByVal hwnd As Long, lpdwProcessId As Long) As Long</div><div class="code_line">Private Declare Function OpenProcess Lib &quot;Kernel32.dll&quot; (ByVal dwDesiredAccessas As Long, ByVal bInheritHandle As Long, ByVal dwProcId As Long) As Long</div><div class="code_line">Private Declare Function CloseHandle Lib &quot;kernel32&quot; (ByVal hObject As Long) As Long</div><div class="code_line">Private Declare Function ReadProcessMemory Lib &quot;kernel32&quot; (ByVal hProcess As Long, lpBaseAddress As Any, _</div><div class="code_line">&nbsp;&nbsp; &nbsp;lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long</div><div class="code_line">Private Const PROCESS_ALL_ACCESS = 2035711</div><div class="code_line">&nbsp;</div><div class="code_line">Private Sub Command1_Click()</div><div class="code_line">&nbsp;&nbsp; &nbsp;Dim l As Long</div><div class="code_line">&nbsp;&nbsp; &nbsp;Dim out As Long</div><div class="code_line">&nbsp;&nbsp; &nbsp;Dim procId As Long</div><div class="code_line">&nbsp;&nbsp; &nbsp;Dim procHandle As Long</div><div class="code_line">&nbsp;&nbsp; &nbsp;&#39;</div><div class="code_line">&nbsp;&nbsp; &nbsp;l = 100</div><div class="code_line">&nbsp;&nbsp; &nbsp;GetWindowThreadProcessId hwnd, procId</div><div class="code_line">&nbsp;&nbsp; &nbsp;procHandle = OpenProcess(PROCESS_ALL_ACCESS, False, procId)</div><div class="code_line">&nbsp;&nbsp; &nbsp;Call ReadProcessMemory(procHandle, l, ByVal VarPtr(out), 4, 0&amp;)</div><div class="code_line">&nbsp;&nbsp; &nbsp;Debug.Print out &#39; out = 100</div><div class="code_line">&nbsp;&nbsp; &nbsp;CloseHandle procHandle</div><div class="code_line">End Sub</div></ol></div></div></div></div> <br>
<br>
<span class="tag-color tag-color-named" data-value="gray" style="color: gray"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2004-11-25T13:27:27+00:00">25.11.04, 13:27</time></span></span><br>
<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>Заметьте, что VarPtr тут не используется...</div></div><br>
<br>
Но не видно что ли, что функция по другому задекларирована ??? Смотри посты сверху уже.]]></description>
        <author>nash</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523306</guid>
        <pubDate>Thu, 25 Nov 2004 13:23:23 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523306</link>
        <description><![CDATA[tmp: Блин, забываю всё время ник прописывать... Зарегиться чтоль у Вас тут :rolleyes:]]></description>
        <author>tmp</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523299</guid>
        <pubDate>Thu, 25 Nov 2004 13:20:25 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523299</link>
        <description><![CDATA[Guest: И, кстати, вот пример для сравнения (дата биоса):<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&#39;...</div><div class="code_line">Private Declare Function ReadProcessMemory Lib &quot;kernel32&quot; (_</div><div class="code_line">ByVal hProcess As Long, _</div><div class="code_line">ByVal lpBaseAddress As Long, _</div><div class="code_line">ByVal lpBuffer As String, _</div><div class="code_line">ByVal nSize As Long, _</div><div class="code_line">lpNumberOfBytesWritten As Long) As Long</div><div class="code_line">&nbsp;</div><div class="code_line">Private Sub Form_Load()</div><div class="code_line">Dim hInst As Long, num As Long, strText As String</div><div class="code_line">strText = String$(8, Chr$(0))</div><div class="code_line">hInst = GetCurrentProcess</div><div class="code_line">ReadProcessMemory hInst, &amp;HFFFF5, strText, 8, num</div><div class="code_line">MsgBox strText</div><div class="code_line">End Sub</div></ol></div></div></div></div><br>
Заметьте, что VarPtr тут не используется...<br>
Тут читается 8 байт в переменную типа String, может быть вот в этом загвоздка? Тип long не соответствует тому, что должно быть? В Дельфях работал Integer, но, как известно, типы в VB не соответствуют тому, название чего они носят =)]]></description>
        <author>Guest</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523257</guid>
        <pubDate>Thu, 25 Nov 2004 13:00:46 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=523257</link>
        <description><![CDATA[tmp: Ребят, не работает ваш код &lt;_&lt; Проверьте плиз на практике...]]></description>
        <author>tmp</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=520556</guid>
        <pubDate>Tue, 23 Nov 2004 11:42:35 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=520556</link>
        <description><![CDATA[nash: <div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>Странно другое, при вызове АПИ ВБ должен сам автоматически подставлять вместо buf нужный указатель. Это он и делает при работе с многими другими функциями. Непонятно, конечно... </div></div><br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">Private Declare Function ReadProcessMemory Lib &quot;kernel32&quot; (ByVal hProcess As Long, lpBaseAddress As Any, _</div><div class="code_line">&nbsp;&nbsp; &nbsp;[B]ByVal lpBuffer As Long[/B], ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long</div><div class="code_line">&nbsp;</div><div class="code_line">Call ReadProcessMemory(procHandle, l, [B]VarPtr(out)[/B], 4, 0&amp;)</div></ol></div></div></div></div>]]></description>
        <author>nash</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=519922</guid>
        <pubDate>Mon, 22 Nov 2004 23:13:46 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=519922</link>
        <description><![CDATA[Lamerroot: <div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <span class='tag-quote__quote-info'>nash &#064; 22.11.04, 10:27</span><div class='quote '>2Andrey_Kun<br>
у меня почему то просто buf не работал, только ByVal VarPtr(out).<br>
хотя вроде тоже самое должно получаться.</div></div><br>
А это всё потому, что виртуальная машина ВБ вносит свои коррекиты в размещении данных. На самом деле все истинные значения переменных хранятся в адресном пространстве msvbvm. В пространстве самого процесса находятся лишь ссылки на данные (ну или вроде этого, всё от типа зависит). Поэтому &quot;ByRef buf&quot; и &quot;VаrPtr(buf)&quot; это по сути не одного и тоже. VаrPtr возвращает реальный адрес.<br>
Странно другое, при вызове АПИ ВБ должен сам автоматически подставлять вместо buf нужный указатель. Это он и делает при работе с многими другими функциями. Непонятно, конечно... :huh:]]></description>
        <author>Lamerroot</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=519155</guid>
        <pubDate>Mon, 22 Nov 2004 11:40:49 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=519155</link>
        <description><![CDATA[Dufa: <strong class='tag-b'>nash</strong>, Ага, правильно говоришь там Pointer надо передавать B)]]></description>
        <author>Dufa</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=519145</guid>
        <pubDate>Mon, 22 Nov 2004 11:27:24 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=519145</link>
        <description><![CDATA[nash: 2Andrey_Kun<br>у меня почему то просто buf не работал, только ByVal VarPtr(out).<br>хотя вроде тоже самое должно получаться.]]></description>
        <author>nash</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=519128</guid>
        <pubDate>Mon, 22 Nov 2004 11:09:35 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=519128</link>
        <description><![CDATA[Dufa: <div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">Private Declare Function ReadProcessMemory Lib &quot;kernel32&quot; Alias &quot;ReadProcessMemory&quot; (ByVal hProcess As Long, lpBaseAddress As Any, lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long</div><div class="code_line">&nbsp;</div><div class="code_line">Private Const PROCESS_ALL_ACCESS = &amp;H000F0000 or &amp;H00100000 or &amp;HFFF</div><div class="code_line">&nbsp;</div><div class="code_line">Private Sub Command1_Click()</div><div class="code_line">Dim hW As Long, PId As Long, hP As Long, bn As Long, buf As Long</div><div class="code_line">hW = FindWindow(&quot;ThunderRT6FormDC&quot;, &quot;Form1&quot;)</div><div class="code_line">GetWindowThreadProcessId hW, PId</div><div class="code_line">hP = OpenProcess(PROCESS_ALL_ACCESS, False, PId)</div><div class="code_line">ReadProcessMemory hP, &amp;H51041C, ByVal VarPtr(buf), 4, bn</div><div class="code_line">MsgBox buf</div><div class="code_line">CloseHandle hP</div><div class="code_line">End Sub</div></ol></div></div></div></div><br>
<br>
попробуй так]]></description>
        <author>Dufa</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=519122</guid>
        <pubDate>Mon, 22 Nov 2004 11:04:16 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=519122</link>
        <description><![CDATA[nash: Вот так работает:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">Private Declare Function ReadProcessMemory Lib &quot;kernel32&quot; (ByVal hProcess As Long, lpBaseAddress As Any, _</div><div class="code_line">&nbsp;&nbsp; &nbsp;lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long</div><div class="code_line">Private Const PROCESS_ALL_ACCESS = 2035711</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp;Dim l As Long, out As Long</div><div class="code_line">&nbsp;&nbsp; &nbsp;l = 100</div><div class="code_line">&nbsp;&nbsp; &nbsp;Call ReadProcessMemory(procHandle, l, ByVal VarPtr(out), 4, 0&amp;)</div><div class="code_line">&nbsp;&nbsp; &nbsp;&#39; out = 100</div></ol></div></div></div></div><br>
<br>
привет любителям любителям холиваров  :tong:]]></description>
        <author>nash</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=518808</guid>
        <pubDate>Mon, 22 Nov 2004 07:39:52 +0000</pubDate>
        <title>Юзание ReadProcessMemory</title>
        <link>https://forum.sources.ru/index.php?showtopic=73424&amp;view=findpost&amp;p=518808</link>
        <description><![CDATA[tmp: Итак, вопрос, я считаю, интересный, и, если он прояснится, думаю можно кинуть ссылку в ФАК.<br>
Я работал с ReadProcessMemory в Дельфях, но когда я попробовал перенести код на VB, ничего не получилось. Для примера я проделывал следущее: пишу маленькую прогу, которая просто присваивает некоторой переменной некоторое значение, а затем пишу прогу, которая как раз пытается прочитать в памяти это значение с помощью ReadProcessMemory.<br>
Код второй проги:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&#39;... объявление других функций</div><div class="code_line">Private Declare Function ReadProcessMemory Lib &quot;kernel32&quot; (_</div><div class="code_line">ByVal hProcess As Long, _</div><div class="code_line">ByVal lpBaseAddress As Long, _</div><div class="code_line">ByVal lpBuffer As Long, _</div><div class="code_line">ByVal nSize As Long, _</div><div class="code_line">lpNumberOfBytesWritten As Long) As Long</div><div class="code_line">&nbsp;</div><div class="code_line">Private Const PROCESS_ALL_ACCESS = &amp;H20 Or &amp;H8</div><div class="code_line">&nbsp;</div><div class="code_line">Private Sub Command1_Click()</div><div class="code_line">Dim hW As Long, PId As Long, hP As Long, bn As Long, buf As Long</div><div class="code_line">hW = FindWindow(&quot;ThunderRT6FormDC&quot;, &quot;Form1&quot;)</div><div class="code_line">GetWindowThreadProcessId hW, PId</div><div class="code_line">hP = OpenProcess(PROCESS_ALL_ACCESS, False, PId)</div><div class="code_line">ReadProcessMemory hP, &amp;H51041C, buf, 4, bn</div><div class="code_line">MsgBox buf</div><div class="code_line">CloseHandle hP</div><div class="code_line">End Sub</div></ol></div></div></div></div><br>
<br>
Я чего только не делал. Не работает. :wall: &gt;:( Значение не записывается в буфер...<br>
Тут есть несколько вариантов: неправильное объявление ReadProcessMemory (не знаю, всё перепробовал), неправильное объявление PROCESS_ALL_ACCESS (напишите плиз полностью на всяк), что-то ещё или, чего я боюсь, VB просто не дружит с этой функцией, может быть из-за несовместимости типов...<br>
При этом общеизвестный пример с чтением даты биос работает нормально, но там читается строка а не число...<br>
Подскажите плиз, а то для меня это принципиально, я пытаюсь доказать некоторым глупым любителям холиваров что VB такой же полноценный язык как и остальные :tong:]]></description>
        <author>tmp</author>
        <category>Visual Basic: Общие вопросы</category>
      </item>
	
      </channel>
      </rss>
	