本文整理汇总了C#中X509Certificate2.Reset方法的典型用法代码示例。如果您正苦于以下问题:C# X509Certificate2.Reset方法的具体用法?C# X509Certificate2.Reset怎么用?C# X509Certificate2.Reset使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类X509Certificate2
的用法示例。
在下文中一共展示了X509Certificate2.Reset方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SelecionarCertificado
//BUSCA CERTIFICADOS INSTALADOS SE INFORMADO UMA SERIE BUSCA A MESMA
//SE NÃO ABRE CAIXA DE DIALOGOS DE CERTIFICADO
public static X509Certificate2 SelecionarCertificado(string CerSerie)
{
X509Certificate2 certificate = new X509Certificate2();
try {
X509Certificate2Collection certificatesSel = null;
X509Store store = new X509Store("MY", StoreLocation.CurrentUser);
store.Open(OpenFlags.OpenExistingOnly);
X509Certificate2Collection certificates = store.Certificates.Find(X509FindType.FindByTimeValid, DateTime.Now, true).Find(X509FindType.FindByKeyUsage, X509KeyUsageFlags.DigitalSignature, true);
if ((string.IsNullOrEmpty(CerSerie))) {
certificatesSel = X509Certificate2UI.SelectFromCollection(certificates, "Certificados Digitais", "Selecione o Certificado Digital para uso no aplicativo", X509SelectionFlag.SingleSelection);
if ((certificatesSel.Count == 0)) {
certificate.Reset();
throw new Exception("Nenhum certificado digital foi selecionado ou o certificado selecionado está com problemas.");
} else {
certificate = certificatesSel[0];
}
} else {
certificatesSel = certificates.Find(X509FindType.FindBySerialNumber, CerSerie, true);
if ((certificatesSel.Count == 0)) {
certificate.Reset();
throw new Exception("Certificado digital não encontrado");
} else {
certificate = certificatesSel[0];
}
}
store.Close();
return certificate;
} catch (Exception exception) {
throw new Exception(exception.Message);
}
}