Build Status Build status [![Build status](https://api.cirrus-ci.com/github/luser/read-process-memory.svg)] [![crates.io](https://img.shields.io/crates/v/read-process-memory.svg)](https://crates.io/crates/read-process-memory) Coverage Status

A crate to read memory from another process. Code originally taken from Julia Evans' excellent ruby-stacktrace project.

Example

```rust,norun extern crate readprocess_memory;

use std::convert::TryInto; use std::io; use readprocessmemory::{Pid, ProcessHandle, CopyAddress, copy_address};

// Try to read size bytes at address from the process pid. fn readsomememory(pid: Pid, address: usize, size: usize) -> io::Result<()> { let handle: ProcessHandle = pid.tryinto()?; let _bytes = copyaddress(address, size, &handle)?; println!("Read {} bytes", size); Ok(()) }

fn main() { readsomememory(123 as Pid, 0x100000, 100).unwrap(); } ```

Documentation

https://docs.rs/read-process-memory