pub struct Module { /* private fields */ }
Expand description
contains info about the module and its content in bytes
Implementations§
Source§impl Module
impl Module
pub fn new( mname: String, mpath: String, pid: u32, mbaseaddr: usize, mbasesize: usize, proc: &Process, ) -> Self
pub fn name(&self) -> &str
pub fn path(&self) -> &str
pub fn pid(&self) -> &u32
pub fn base_address(&self) -> usize
pub fn base_size(&self) -> &usize
pub fn data(&self) -> &Vec<u8> ⓘ
pub fn get_raw<T: Copy>(&self, o: usize, is_relative: bool) -> Option<T>
Sourcepub fn find_signature(&self, sig: &Signature) -> Result<usize, ProcMemError>
pub fn find_signature(&self, sig: &Signature) -> Result<usize, ProcMemError>
This functions finds an address in memory based on the provided Signature
use proc_mem_rs::{Process, Module, Signature, ProcMemError};
let some_game: Result<Process,ProcMemError> = Process::with_name("some_game.exe");
let module: Result<Module,ProcMemError> = some_game.module("module.dll");
let lp_signature = Signature {
name: "LocalPlayer",
pattern: "8D 34 85 ? ? ? ? 89 15 ? ? ? ? 8B 41 08 8B 48 04 83 F9 FF",
offsets: vec![3],
extra: 4,
relative: true,
rip_relative: false,
rip_offset: 0,
};
let lp_address: Result<usize,ProcMemError> = module.find_signature(&lp_signature);
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Module
impl RefUnwindSafe for Module
impl Send for Module
impl Sync for Module
impl Unpin for Module
impl UnwindSafe for Module
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more