try this: (AHK)
it reads 100 byte start from 0x10000
problem is, i dont know how to handle 100 bytes and convert it to useful datas...
screenshot:
[Only registered and activated users can see links. Click Here To Register...]
Code:
WinGet, PID, PID, New
ProcessHandle := DllCall("OpenProcess", "int", 24, "char", 0, "UInt", PID, "UInt")
GrantedCapacity := VarSetCapacity(Output, 100)
Read_MemAdress = 0x100000
DllCall("ReadProcessMemory", "UInt", ProcessHandle, "UInt", Read_MemAdress, "str", Output, "Uint", GrantedCapacity, "Uint *", BytesRead)
Bin2Hex(hexOut, output, bytesread)
msgbox, %hexOut%
Bin2Hex(ByRef @hex, ByRef @bin, _byteNb=0)
{
local intFormat, dataSize, dataAddress, granted, x
intFormat = %A_FormatInteger%
SetFormat Integer, Hex
dataSize := VarSetCapacity(@bin)
If (_byteNb < 1 or _byteNb > dataSize)
{
_byteNb := dataSize
}
dataAddress := &@bin
Loop %_byteNb%
{
x := *dataAddress + 0x100
StringRight x, x, 2 ; 2 hex digits
StringUpper x, x
@hex = %@hex%%x%
dataAddress++ ; Next byte
}
SetFormat Integer, %intFormat%
Return _byteNb
}