Криптографическое исключение, необработанное при создании сертификата
Я создаю это простое консольное приложение, которое создаст мой собственный сертификат. Вот мой код
var fi = new FileInfo("certificate.cer");
if (!fi.Exists)
{
var startInfo = new ProcessStartInfo();
startInfo.FileName = "makecert.exe";
startInfo.Arguments = "-sv SignRoot.pvk -cy authority -r sha1 -n \"CN=Certificate\" -ss my -sr localmachine certificate.cer";
Process.Start(startInfo);
}
X509Certificate.CreateFromCertFile("certificate.cer");
Но почему я получаю это в моей последней строке кода?
CryptographicException was unhandled.
Message=The system cannot find the file specified.
2 ответа
Решение
Я разрешил ситуацию с помощью пакетного (.bat) файла, потому что он мне проще. И пусть C# запускает пакетный файл при запуске программы. Спасибо за помощь.:)
Вам нужно подождать makecert
процесс для выхода перед использованием сертификата.
Process
.Start(startInfo)
.WaitForExit();