Black_Hole
Знающий
- Сообщения
- 126
- Репутация
- 11
Пытаюсь сделать DLL с одной функцией, ниже приведенный код считывает первый символ из калькулятора, адрес считывания (0x0035cfcc) может быть другим, если знаете альтернативный вариант считать из памяти средствами WinAPI в PureBasic, напишите ваш вариант.
Код:
local $a,$MemoryOpen,$MemoryRead
$a = DllStructCreate('byte')
$MemoryOpen = DllCall(DllOpen('kernel32.dll'), 'int', 'OpenProcess', 'int', 0x001F0FFF, 'int', 1, 'int', ProcessExists('calc.exe'))
$MemoryRead = DllCall(DllOpen('kernel32.dll'),'int','ReadProcessMemory','int',$MemoryOpen[0],'int',0x0035cfcc,'int',DllStructGetPtr($a),'int',DllStructGetSize($a),'int',0)
msgbox(0,0,(DllStructGetData($a,1)))