C# · 12月 22, 2021

c# – 如何删除由makecert添加的证书存储

使用Microsoft工具MakeCert.exe的-ss选项(-ss指定存储输出证书的主题的证书存储名称),我在服务器上创建自己的存储.我能够以programaticaly删除我的证书,但我无法删除商店本身.根据错误消息,提供商似乎不支持此消息.

我甚至无法使用MMC管理单元(certmgr.msc)将其删除.有谁知道怎么做?

PS cert:\LocalMachine> Remove-Item .\SigningStoreRemove-Item : L’exécution du fournisseur s’est arrêtée,car le fournisseur ne prend pas en charge cette opération.Au niveau de ligne : 1 Caractère : 12+ Remove-Item <<<< .\SigningStore + CategoryInfo : NotImplemented: (:) [Remove-Item],PSNotSupportedException + FullyQualifiedErrorId : NotSupported,Microsoft.PowerShell.Commands.RemoveItemCommand

我找到的唯一方法是使用CertUnregisterSystemStore Win32 API

解决方法 读取 this并使用带有pinvoke(已经完成!)的c#代码添加类型的crypt32.dll