#memflow #introspection #memory #dma

memflow-win32

win32 integration of the memflow physical memory introspection framework

4 releases

new 0.1.4 Nov 20, 2020
0.1.3 Oct 8, 2020
0.1.1 Sep 5, 2020
0.0.0 Jul 16, 2020

#111 in Memory management

Download history 3/week @ 2020-08-09 2/week @ 2020-08-16 8/week @ 2020-08-30 83/week @ 2020-09-06 18/week @ 2020-09-13 6/week @ 2020-09-20 10/week @ 2020-09-27 23/week @ 2020-10-04 29/week @ 2020-10-11 21/week @ 2020-10-18 14/week @ 2020-10-25 48/week @ 2020-11-01 15/week @ 2020-11-08 37/week @ 2020-11-15

103 downloads per month
Used in 2 crates

Custom license

445KB
10K SLoC

memflow-win32

Crates.io build and test codecov MIT licensed Discord

This crate provides integration for win32 targets for memflow. This library can be used in addition to the memflow core itself read processes, modules, drivers, etc.

Example initializing a win32 target:

use std::fs::File;
use std::io::Write;

use log::{error, Level};

use memflow::connector::*;
use memflow_win32::{Kernel, Win32OffsetFile};

pub fn main() {
    let connector_name = std::env::args().nth(1).unwrap();
    let connector_args = std::env::args().nth(2).unwrap_or_default();

    // create inventory + connector
    let inventory = unsafe { ConnectorInventory::try_new() }.unwrap();
    let connector = unsafe {
        inventory.create_connector(
            &connector_name,
            &ConnectorArgs::parse(&connector_args).unwrap(),
        )
    }
    .unwrap();

    // initialize kernel
    let kernel = Kernel::builder(connector)
        .build_default_caches()
        .build()
        .unwrap();

    println!("{:?}", kernel);
}

Additional examples can be found in the examples subdirectory.

Dependencies

~4–5.5MB
~127K SLoC