无法从 WinApi crate 调用 CryptDecrypt,因为它找不到模块 [英] Cannot call CryptDecrypt from the WinApi crate because it could not find the module
问题描述
在文档中 它说该函数在 winapi::um::wincrypt::CryptDecrypt
中,但是当我安装 crate 并将其带入我的项目时,一切正常,直到我尝试调用该函数我收到以下错误消息:
In the documentation it says that the function is in winapi::um::wincrypt::CryptDecrypt
but when I install the crate and bring it in my project everything works fine until I try to call the function where I get the following error message:
error[E0433]: failed to resolve. Could not find `wincrypt` in `um`
--> src\main.rs:68:39
|
68 | let decrypted_password = winapi::um::wincrypt::CryptDecrypt(password);
| ^^^^^^^^ Could not find `wincrypt` in `um`
我的目标是从 Chrome 存储密码的计算机上的本地数据"文件中解密密码.我在 Rust 中使用名为 winapi
的 Windows win32crypt
API 绑定.我正在尝试完成类似于 chromepass
但在 Rust 中的事情.>
My goal is to decrypt passwords from the "Local Data" file on my computer where Chrome stores passwords. I am using the Windows win32crypt
API binding called winapi
in Rust. I am trying to accomplish something similar to chromepass
but in Rust.
推荐答案
来自 crate 级文档:
每个模块都在功能标志上门控,因此您必须启用适当的功能来访问这些项目.例如,如果你想要使用来自 winapi::um::winuser
的东西,你必须启用winuser
功能.
Frequently asked questions
Why am I getting errors about unresolved imports?
Each module is gated on a feature flag, so you must enable the appropriate feature to gain access to those items. For example, if you want to use something from
winapi::um::winuser
you must enable thewinuser
feature.
在这种情况下,您需要添加wincrypt
:
In this case, you need to add wincrypt
:
[target.'cfg(windows)'.dependencies]
winapi = { version = "0.3", features = ["wincrypt"] }
这篇关于无法从 WinApi crate 调用 CryptDecrypt,因为它找不到模块的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!