2017-09-12 2 views
1

J'essaie d'installer un certificat dans la racine approuvée pour la machine locale.certcontext est un handle non valide

C'est ce que j'ai jusqu'à présent

private void InstallCertificate() 
    { 
     X509Certificate2 certificate = new X509Certificate2(); 
     string CertFile = Environment.CurrentDirectory + "\\Resources\\cert.crt"; 
     X509Store store = new X509Store(StoreName.Root, StoreLocation.LocalMachine); 
     store.Open(OpenFlags.ReadWrite); 
     store.Add(certificate); 
     store.Close(); 

Je reçois l'erreur suivante « certcontext est un handle non valide » et se demandant si quelqu'un peut jeter une certaine lumière.

Merci

Répondre

1
X509Certificate2 certificate = new X509Certificate2(); 
    string CertFile = Environment.CurrentDirectory + "\\Resources\\cert.crt"; 

On peut supposer que vous vouliez dire charger réellement certfile à un moment donné:

string CertFile = Environment.CurrentDirectory + "\\Resources\\cert.crt"; 
    X509Certificate2 certificate = new X509Certificate2(CertFile); 

En l'état actuel, vous avez un objet géré qui représente effectivement le manque d'avoir un certificat.

+0

Légende, merci. ah, sentez-vous plutôt idiot! – Hex02