我做了一个含有公钥与私钥的pfx证书,我想为我的程序及进行签名,但是在编译程序及的时候弹出一个对话框,“此项目包含用于签名的密码加密密钥。请输入文件的密码,以将密钥文件导入本地加密存储区数据库备用”。怎么能不弹出这个对话框呢?我能不能自己把这个密钥文件导入到存储区里面,不让他谈这个对话框?请各位大侠赐教。

解决方案 »

  1.   

    这个对话框的名称是"导入密钥文件"对话框。微软的MSDN说,“密码信息存储在个人密钥容器列表中”。
      

  2.   

    估计你是DOWN了个源码会有这个问题.
    重新生成个证书就可以了.
      

  3.   

    我没有下载源码,我就是要解决弹出对话框的问题,证书是我用makecert做的,我希望能够自己控制把证书的密钥安装到RSA的某个容器中,避免弹出"导入密钥文件"这个对话框
      

  4.   

    我希望在第一次编译的时候就不弹出这个框,因为我看到如果我输入密码之后会往我的RSA文件夹中放两个文件,这两个文件我查了MSDN说是一个为程序及签名的信息,一个是为ClickOnce签名的信息,我能不能手工完成这个工作不让他弹出那个对话框,我想做到的就是背着用户把证书安装到用户的机器上面。
      

  5.   

    证书有两种作用:
    1、用来标明身份,比如https连接的server会向client发送一个证书,表示我就是你要访问的服务器。
    2、证书里包含公钥和私钥,用来加密数据
    你证书用到底用来干什么的?签名程序集的话,他会hash程序集,用公钥加密,并且把公钥保存在程序集里,如果你安装时把程序集注册到共享程序集目录里,他会重新hash程序集和程序集里以前hash的数据比较,看程序集是不是被修改了。这种情况下证书只是编译时需要,部署到客户机器上是不用证书的。
    如果你要背着把证书安装到客户机器上,你可以写程序来完成,我用过一个收费的第三方工具,www.eldos.com/sbb/
      

  6.   

    xiaoyuzi你好,能把联系方式发给我么,关于这方面的东西向你请教一下。