我想从我的商店找到证书,但使用以下代码我无法获得证书。它总是返回null。
我的代码有什么问题?
更新: >
我通过探索store对象复制了我的证书指纹,并将其与我的指纹字符串进行比较,并返回false!我认为在VS2010 IDE或复制粘贴问题解释字符串的问题,你可以看到下面的图。因为它应该忽略来自列表的证书。有没有人面临这种类型的问题?
解决方案
证书集合是空的,因为没有指纹的证书。 检查:
-
证书在您当前用户中的存在
-
使用mmc验证上述内容
-
$ c> X509Store store = new X509Store(StoreName.Root,StoreLocation.CurrentUser);
that the certificate is present in your current user
that the certificate is stored in the personal folder
using mmc to verify the above things
using X509Store store = new X509Store(StoreName.Root, StoreLocation.CurrentUser);
修改:
以下是否有用:
X509Certificate2Collection col = store.Certificates; foreach(var currCert in col) { var currThumbprint = currCert.Thumbprint; if(thumbprint.ToUpperInvariant()== currThumbprint) { x509Certificate2 = currCert; break; } }
I want to find certificate from my store but using following code i could not able to get certificate. It always return null.
What's wrong with my code?
Update:
I have copied my certificate thumbprint by exploring store object and compare it with my thumbprint string and it return false! I think issue of interpreting string in VS2010 IDE or copy paste problem you can see that below in fig. because of this it should ignore the certificate from the list. Have anyone faced this type of issue before?
解决方案
Well the certificate collection is empty since there's no certificate with that thumbprint. Check:
Try:
Edit:
Does the following return anything useful:
X509Certificate2Collection col = store.Certificates; foreach (var currCert in col) { var currThumbprint = currCert.Thumbprint; if (thumbprint.ToUpperInvariant() == currThumbprint) { x509Certificate2= currCert; break; } }
更多推荐
无法获得X509Certificate2证书的代码C#
发布评论