26次重大发布

0.58.0 2024年7月3日
0.56.0 2024年4月12日
0.55.0 2024年3月6日
0.52.0 2023年11月15日
0.34.0 2022年3月15日

484解析实现

Download history 17566/week @ 2024-04-30 18119/week @ 2024-05-07 22835/week @ 2024-05-14 20283/week @ 2024-05-21 20319/week @ 2024-05-28 19950/week @ 2024-06-04 19296/week @ 2024-06-11 20620/week @ 2024-06-18 17193/week @ 2024-06-25 18322/week @ 2024-07-02 17762/week @ 2024-07-09 20038/week @ 2024-07-16 20078/week @ 2024-07-23 17636/week @ 2024-07-30 20482/week @ 2024-08-06 17275/week @ 2024-08-13

79,274 每月下载量
104 个crate中使用 (通过 windows-bindgen)

MIT/Apache

94KB
2.5K SLoC

Windows元数据读取器

windows-metadata” crate提供了一个基于ECMA-335文件格式的Windows元数据文件的快速读取器。

首先将以下内容添加到您的Cargo.toml文件中

[dependencies.windows-metadata]
version = "0.58"

按需读取元数据

use windows_metadata::*;

fn main() {
    let bytes = std::fs::read(r#"C:\Windows\System32\WinMetadata\Windows.Foundation.winmd"#)
        .expect("File not found");

    let file = File::new(bytes).expect("Invalid metadata");

    let reader = Reader::new(vec![file]);

    for def in reader.get_type_def("Windows.Foundation", "IAsyncInfo") {
        println!("{}", def.name());

        for method in def.methods() {
            println!("{}", method.name());
        }
    }
}

无运行时依赖