LocalProcessLocalProcess это основной user-mode backend в EyeAuras. Если нужен самый прямой путь к локальному процессу через WinAPI, почти всегда начинать стоит с него. По духу это тот же внешний сценарий, что и в External Memory Hack, только с более удобным верхним слоем.
LocalProcess хорош, когда:
Главное ограничение одно:
В таких случаях обычно смотрят на:
NativeLocalProcess — если нужный handle уже получен заранееLCProcess — если память читается внешне, например через DMAKDProcess — если нужен более глубокий доступ через kernel driverusing System.Diagnostics;
using EyeAuras.Memory;
using var byPid = LocalProcess.ByProcessId(Process.GetCurrentProcess().Id);
using var byName = LocalProcess.ByProcessName("notepad");
var processes = LocalProcess.GetProcesses();
Через LocalProcess вы получаете сразу две вещи:
process.MemoryИз этого сразу вырастают:
MemoryOfModule(...)ReadExports(), ReadImports(), ReadSections()pattern scanningcode cavesDLL inject, manual mapping, APC, remote threadИменно поэтому это основной backend для большинства практических сценариев.
using EyeAuras.Memory;
using EyeAuras.Memory.Scaffolding;
using var process = LocalProcess.ByProcessName("game");
using var moduleMemory = process.MemoryOfModule("game.exe");
var sections = moduleMemory.ReadSections();
var imports = moduleMemory.ReadImports();
var exports = moduleMemory.ReadExports();
Если потом хотите перейти от внешнего чтения к более активной internal-практике, полезны DLL Memory Hack, DLL Injector и Code Caves & DLL's.
NativeLocalProcess лучшеNativeLocalProcess нужен не вместо LocalProcess, а когда процесс уже открыт нужным вам способом и вы хотите положить Memory API поверх готового handle.