win_iter 0.1.3

A package that allows you to easily iterate over all running programs on Windows and filter them via architecture. This package only uses bindings for WinAPI functionality.
Documentation
mod modules;
mod processes;
mod winapi_bindings;
mod winapi_wrappers;

pub use processes::{Architecture, Process, fetch_all_processes};

#[cfg(test)]
mod tests {
    use std::ffi::CString;

    use crate::fetch_all_processes;
    use crate::processes::fetch_process;
    use crate::winapi_bindings::LoadLibraryA;
    #[test]
    fn it_works() {
        if let Some(process) = fetch_process("brave.exe") {
            let loaded_modules = process.fetch_loaded_modules();
            for module in loaded_modules.iter() {
                println!(
                    "Found loaded module: {}, base address: {:#X}",
                    module.name, module.base_address as usize
                );
            }
        } else {
            println!("Failed to find process!");
        }
    }
}