Winforms 通过C代码动态向网站添加SSL证书后,SSL证书停止工作

Winforms 通过C代码动态向网站添加SSL证书后,SSL证书停止工作,winforms,c#-4.0,ssl,https,Winforms,C# 4.0,Ssl,Https,我为每个网站主机动态添加SSL证书,并为该特定网站添加SSL证书。但是,SSL不工作..我必须手动删除证书,然后导入证书以使SSL工作 我的问题是,为什么在通过C代码动态添加SSL后,会添加SSL,但不起作用。??为什么我必须手动删除并导入.pxf文件才能使其正常工作?我需要在代码中添加一些内容吗 代码如下: ServerManager serverMgr = new ServerManager(); X509Store store = new X509Store(StoreName.My,

我为每个网站主机动态添加SSL证书,并为该特定网站添加SSL证书。但是,SSL不工作..我必须手动删除证书,然后导入证书以使SSL工作

我的问题是,为什么在通过C代码动态添加SSL后,会添加SSL,但不起作用。??为什么我必须手动删除并导入.pxf文件才能使其正常工作?我需要在代码中添加一些内容吗

代码如下:

ServerManager serverMgr = new ServerManager();

X509Store store = new X509Store(StoreName.My, StoreLocation.LocalMachine);
            store.Open(OpenFlags.OpenExistingOnly | OpenFlags.ReadWrite);


            X509Certificate2 certificate = new X509Certificate2(@"C:\inetpub\wwwroot\Star_clouddunk_net.pfx", "w0rk");

            store.Add(certificate);

            var binding = mySite.Bindings.Add("*:443:" + strhostname + "", certificate.GetCertHash(), store.Name);
            binding.Protocol = "https";
            store.Close();

            serverMgr.CommitChanges();

您在何处手动将证书导入?上面的代码正在将证书添加到StoreLocation.LocalMachine。您的进程是否作为本地系统运行?您可以尝试导入StoreLocation.CurrentUser。我正在通过MMC手动导入它。Sart->Run->MMC。我的进程在服务器系统上运行。好的,我正在尝试使用StoreLocation.CurrentUser,然后会让你知道。史蒂夫:它成功了,伙计,我把它从StoreLocation.LocalMachine改为StoreLocation.CurrentUser。现在SSL没有中断。