C# 列出所有系统证书存储
我正在寻找一种方法来获取任何(C# 列出所有系统证书存储,c#,certificate,pki,C#,Certificate,Pki,我正在寻找一种方法来获取任何(CurrentUser或LocalMachine)中的所有系统证书存储 StoreLocation枚举显然不包括使用X509Store(String)或X509Store(String,StoreLocation)创建的用户定义的证书存储。此外,这并没有定义诸如SPC或请求 我查看了crypto32.dllAPI,除了register/unregister之外,我看不到任何相关内容 非基于文件系统的存储出现在注册表中(例如HKEY\u CURRENT\u USER\
CurrentUser
或LocalMachine
)中的所有系统证书存储
StoreLocation
枚举显然不包括使用X509Store(String)
或X509Store(String,StoreLocation)
创建的用户定义的证书存储。此外,这并没有定义诸如SPC
或请求
我查看了crypto32.dll
API,除了register/unregister之外,我看不到任何相关内容
非基于文件系统的存储出现在注册表中(例如
HKEY\u CURRENT\u USER\SOFTWARE\Microsoft\SystemCertificates\Root
)。警察可以查问商店。这是--查询注册表--它在后台做什么?这样的手动解决方案是否可以在XP/Vista/7/8之间移植?好吧,我们的SecureBackbox产品通过CryptoAPI实现您所需的功能,即函数。不过,它有很多参数 太好了,谢谢!(我想我在其他475个cryptoAPI方法/属性中错过了这一点)。现在我只需要从C#…@Martin check着手对付非托管世界。虽然它不包含CertEnumSystemStore(我已经检查过),但它包含类似的函数,可以帮助您入门。