6个版本
0.2.1 | 2020年1月18日 |
---|---|
0.2.0 | 2020年1月13日 |
0.1.3 | 2020年1月12日 |
#428 在 操作系统
每月 46 次下载
用于 robopilot
14KB
228 行
功能
此包以流式方式公开了处理操作系统内加载的进程和模块的功能。
进程列表
此包公开了一个for_each_process
函数,用于顺序处理操作系统中打开的每个进程。
示例
将每个进程打印到stdout
use std::path::{Path, PathBuf};
use process_list::for_each_process;
fn print_processes(id : u32, name : &Path) {
println!("Id: {} --- Name: {}", id, name.display());
}
for_each_process(print_processes).unwrap();
模块列表
此包公开了一个for_each_module
函数,用于顺序处理进程加载的每个模块。
示例
将当前进程加载的每个模块打印到stdout
use process_list::for_each_module;
use std::process;
fn print_stuff() {
env_logger::init();
for_each_module(process::id(), |(address, size), name| {
println!("{:016X} - {} \t {}", address, size, name.display())
})
.unwrap();
}
特性
您可以通过启用此包的log
特性来从它获取日志。
支持
目前只支持Windows,但应该足够简单,可以移植到其他操作系统。
这不是优先事项,但欢迎接受pull请求。
依赖项
~195KB