Моя цель - создать метод, который будет обрабатывать дескриптор процесса и возвращать массив байтов, представляющий память этого процесса. Вот что у меня есть:Получить образ памяти процесса
[DllImport("Kernel32.dll")]
public static extern bool ReadProcessMemory(IntPtr hProcess, IntPtr lpBaseAddress, byte[] lpBuffer, UInt32 nSize, ref UInt32 lpNumberOfBytesRead);
public static byte[] MemRead(IntPtr handle, IntPtr address, UInt32 size, ref UInt32 bytes)
{
byte[] buffer = new byte[size];
ReadProcessMemory(handle, address, buffer, size, ref bytes);
return buffer;
}
Я не знаю, что передать методу обертки в качестве аргументов. Я могу найти handle
, а bytes
- выходная переменная, но как насчет address
и size
? Откуда я могу получить эти данные?
Почему вы хотите прочитать память процесса? – svick
@svick А почему бы и нет? –