c++ - 如何使用 Xenroll 和 CertEnroll 创建在所有版本的窗口上运行的 "Certificate Signing Request"?

标签 c++ winapi cryptography cryptoapi csr

我的项目必须创建证书签名请求 (CSR),然后我使用 Xenroll api。但问题是当我使用 Xenroll.dll(在 Window XP 中支持)但是在 window vista 和新版本的窗口中时,这个 DLL 被重构并重命名为 CertEnroll.dll(Xenroll 现在在新版本中没有退出,在低版本中不'没有 CertEnroll.dll)。

如何使用 Xenroll 和 CertEnroll 创建在所有窗口版本上运行的“证书签名请求”?

最佳答案

不幸的是,在 Windows 中没有用于此目的的操作系统版本不可知的 API。我的解决方案是在 XP 和 Win Server 2003 上使用 Xenroll.dll,在 Vista 及更高版本上使用 CertEnroll.dll,方法是在生成 CSR 之前检查操作系统版本的主要部分。

关于c++ - 如何使用 Xenroll 和 CertEnroll 创建在所有版本的窗口上运行的 "Certificate Signing Request"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7804627/

相关文章:

c++ - std::使用自定义比较器设置外键

c++ - vector push_back move 实现

c++ - 非类型参数取决于它后面的参数

c++ - 为来自不同进程的窗口设置父级是否正确?

python - 如何在Python中实现类似C# RSACryptoServiceProvider的加密?

c# - 如何在序列化后加密保存二进制流并读回?

c++ - 如何在cryptoki中重命名容器名称

C++ 将二维 c 字符串元素传递给函数

windows - 缺少注册表 HKLM\SOFTWARE\Microsoft\VisualStudio\SxS\VS7

C++ std::string 如何用多个双引号格式化字符串文字?