我使用了来自CSPDK的CNG提供程序的示例来实现我自己的CNG哈希提供程序。但是当我使用PKCS7(签名消息)WinApi函数时出现CNG提供程序不起作用。 CryptMsgOpenToEncode函数报告0xC0000005错误,当没有提供者时也会出现此错误。在管理员帐户下一切正常。如果我直接使用CNG Hash Provider的MicroSoft示例,它会报告相同的错误。此外,如果我尝试在没有管理员权限的用户帐户下安装提供程序,我会从BCryptRegisterProvider函数中获得0xC0000022错误。如果启用了UAC(用户访问控制),则提供程序也不起作用。
安装CNG提供商的正确方法是什么(可以在管理员下完成),以使其在用户帐户下运行?