winprocinfo を公開しました
新作
Windows で現在実行中のプロセスやスレッドの情報を取得する Rust ライブラリ「WinProcInfo」を公開しました。
機能
- プロセス・スレッド情報リストの一括取得(WinProcList)
- リストからのPID・プロセス名での検索
- プロセス・スレッド情報の個別取得
WinProcInfo では、WinProcList に現在実行中のプロセス・スレッドの情報を一括で取得し、リストからの検索や個別取得が可能です。
プロセスやスレッドの一括での取得はメモリを消費します。仮に一部の情報だけを取得したい場合は、個別での取得も可能です。
サンプルプログラム
全プロセス情報を取得し、PID とプロセス名を表示する
use winprocinfo;
fn main() {
let proc_list = winprocinfo::get_list().expect("Failed to retrieve process list");
for proc in proc_list.proc_list.iter() {
println!("PID: {}, Name: {}", proc.unique_process_id, proc.image_name);
}
}
インストール方法
バイナリ(サンプルプログラム)を実行する場合:$ cargo install winprocinfo
ライブラリを使用する場合:
[dependencies] winprocinfo = "0.1.1"
動作環境
- Windows x86_64
詳細
詳しくは crates.io またはドキュメントをご覧ください。winprocinfo - crates.io: Rust Package Registry
https://crates.io/crates/winprocinfo
WinProcInfo - Docs.rs: Rust Documentation
https://docs.rs/winprocinfo
WinProcInfo は、Windows 固有のプロセス情報取得を Rust から扱いやすくすることを目的に作成しました。
タスク管理系のツールやデバッグ補助、状態監視のような用途では、どの情報をどの粒度で取得できるかが重要になるため、一括取得と個別取得の両方を用意しています。
今後は、実際の利用例や必要に応じた情報項目の拡充も視野に入れつつ、Windows 環境向けの基盤ライブラリとして育てていければと考えています。