DriverSample
参考
wdk
使用wdk即可,ewdk没太大必要,需要注意自己使用的wdk对应的msvc链子的版本
LLVM
安装完成后将
LLVM路径/bin
放入LIBCLANG_PATH
环境变量中
测试的时候在根目录下cargo make
即可
出现以下问题
代表你有多个kit版本,主要需要将
Windows Kits\10\Lib
与Windows Kits\10\Tools
出现的最高版本一样,否则他会在另外一个地方找不到对应文件的存在例如一个10.0.26一个10.0.22,他会直接在两个地方找10.0.26,如果没找到就会报错
需要注意对应wdk安装的版本
快速创建项目
工具cargo-generate
cargo install cargo-generate
即可
cargo generate --git https://github.com/microsoft/Windows-rust-driver-samples
加载
pnputil.exe /add-driver .\echo_2.inf /install
pnputil /enum-devices /class Sample /connected
devgen.exe /add /hardwareid "root\ECHO_2"
因为对应设备使用的驱动为 c_swdevice.inf
而不是我们安装的echo_2.inf
原因是证书未被信任(优先级 已签名>未签名),可以先将target下的
放入根证书 然后重新安装即可
代码37
老工具链
出现类似这种问题
https://github.com/microsoft/windows-drivers-rs/issues/42#issuecomment-1905274389
更改
wdk-sys/src/wdf.rs
1
2
3 WdfMinimumVersionRequired: ULONG = 33;
//变为
WdfMinimumVersionRequired: ULONG = 31;
新工具链
- 标题: DriverSample
- 作者: runwu2204
- 创建于 : 2024-10-26 01:30:02
- 更新于 : 2024-11-08 20:11:09
- 链接: https://runwu2204.github.io/2024/10/26/开发/Windows/驱动/Rust/DriverSample/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论