JustasMasiulis / remote_memory

A simple library which provides a way to read and write the memory of other processes

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

remote_memory Build Status Build status

A modern, easy to used library to read or write a remote processes memory that can be customized to your liking.

supported platforms

The library has been tested to work with OSX, windows and linux operating systems.

usage

By default the library uses jm::process_handle so passing it a process id or native handle is valid.

All of the functions also accept std::error_code as their last parameter.

remote::memory mem = ...;
auto i = mem.read<int>(address); // address can be anything that has size of 4 or 8 bytes
mem.read(another_address, i); // overwrites i
mem.read(another_address, &i, sizeof(i));

mem.write(address, i);
mem.write(address, &i, sizeof(i));

// same as *(*(*address + 0x16) + 0x14) if all of these were byte pointers
mem.traverse_pointers_chain(address, 0x16, 0x4);

// free functions are also present
remote::read_memory(handle, address, &buffer, size);
remote::write_memory(handle, address, &buffer

About

A simple library which provides a way to read and write the memory of other processes

License:Apache License 2.0


Languages

Language:C++ 95.2%Language:CMake 4.8%