本文为个人博客备份文章,原文地址:

http://validvoid.net/visual-studio-pfx-import/

导入密钥

在使用 Visual Studio 生产项目时,使用 pfx 密钥签名的项目可能遭遇以下问题:

无法导入以下密钥文件: ****.pfx,该密钥文件可能受密码保护。若要更正此问题,请尝试再次导入证书,或手动将证书安装到具有以下密钥容器名称的强名称 CSP: VS_KEY_****************

Cannot import the following key file: ****.pfx. The key file may be password protected. To correct this, try to import the certificate again or manually install the certificate to the Strong Name CSP with the following key container name: VS_KEY_****************

这种情况只要依提示将密钥导入即可,具体的操作步骤是:

  1. 启动 Visual Studio 命令提示

    Visual Studio 2015 以前的版本:

    中文版: 开始 -> Microsoft Visual Studio 2015 - >Visual Studio Tools -> Visual Studio 命令提示(201*)

    English: Start -> Microsoft Visual Studio 201* -> Visual Studio Tools -> Developer Command Prompt for VS201*

    Visual Studio 2015 :

    中文版: 开始 -> Visual Studio 2015(文件夹) - > Visual Studio 命令提示(2015)

    English: Start -> Visual Studio 2015(Folder) -> Developer Command Prompt for VS2015

  2. 在命令提示符中定位到 .pfx 文件所在的目录

  3. 在命令提示符中输入 sn -i ****.pfx VS_KEY_****************

    例如: sn -i xxxx.pfx VS_KEY_791BAAE3DF288545

  4. 输入 .pfx 密钥文件的密码,完成导入

完成导入后应该就可以在 Visual Studio 中正常 build 项目了。

重新导入密钥

有时,在 Visual Studio 要求导入密钥,并执行上述导入步骤时会得到以下报错:

Failed to install key pair -- Object already exists

这时可以通过在 Visual Studio 命令提示 中执行以下命令移除已经导入的密钥,以便重新导入:

sn -d VS_KEY_****************

提示密钥删除成功后可以通过上述导入步骤重新导入密钥。

如果在删除密钥时获得以下报错:

容器不存在

Container does not exist

这是由于系统中另外某个账户已经导入了密钥,在当前账户中无法对其进行移除。可以尝试登录到早先导入密钥的用户账户对密钥进行移除,然后再切换到要进行 项目 build 的账户重新导入密钥即可。

Visual Studio 要求导入 pfx 密钥以及导入后依然要求导入的解决办法的更多相关文章

  1. 运行OpenGL红宝书第9版源码时Visual Studio提示“无法启动程序...ALL_BUILD。拒绝访问“的问题的解决办法

    问题描述: OpenGL红宝书第9版源码采用CMake编译后,用相应的Visual Studio(如VS2012)打开“vermilion9.sln”解决方案,并运行时Visual Studio提示“ ...

  2. 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法

    转自:http://blog.csdn.net/xiaochunzao/article/details/16987703 Visual Studio 2013 编译旧的 multi-byte char ...

  3. Visual Studio 2010 起始页中 不显示最近使用的项目问题,解决办法

    最近新装了vs2010,发现打开vs2010 后 起始页面中的最近使用的栏目中 并未显示最近加载的项目 解决办法如下: 运行 regedit 打开下面的键值: HKEY_CURRENT_USER/So ...

  4. Visual Studio Code运行Python文件出现 “Linter pylint is not installed ”提示解决办法

    运行Python代码后出现 “Linter pylint is not installed ”提示 只需要添加一行代码就可以解决 { "python.pythonPath": &q ...

  5. Visual Studio C# 利用git和github协同开发时产生冲突的解决办

    Visual Studio C# 利用git和Github协同开发时产生冲突的解决办法 前言:在前两天的助教作业中,发现了自己没有办法解决在用vs开发C#的窗体项目的过程中产生的冲突问题,在查阅了资料 ...

  6. Visual Studio 2012简体中文专业版密钥(激活码)

    VS2012 正式版在Beta版的基础上进行了很多改进,尤其是加入了全新的用户界面. VS2012 的硬件需求与VS2010相同,不过由于 Visual Studio 2012 利用了新版 Windo ...

  7. visual studio 2015 key vs2015密钥

    Visual Studio Professional 2015简体中文版(专业版)KEY:HMGNV-WCYXV-X7G9W-YCX63-B98R2Visual Studio Enterprise 2 ...

  8. Visual Studio 2022(VS2022)激活密钥

    Visual Studio 2022(VS2022) 激活码: 专业版 Pro: TD244-P4NB7-YQ6XK-Y8MMM-YWV2J 企业版 Enterprise: VHF9H-NXBBB-6 ...

  9. Visual Studio 2010编译时总是提示"调用目标发生了异常"的解决

    现象: 无论建立的是Win32 Console的解决方案,还是MFC的解决方案,重新打开Visual Studio 2010之后,编译时总是提示“调用的目标发生了异常” 解决: 1. 关闭Visual ...

随机推荐

  1. javascript 取掉空格自定义函数

    js  取掉空格自定义函数 //取掉左右空格: function trim(str){ return str.replace(/(^\s*)|(\s*$)/g, ""); } // ...

  2. InnoDB记录压缩及使用分析

    此文已由作者温正湖授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 这篇文章,源于RDS组内的一次饭后闲聊,两位小伙伴在探讨InnoDB启用压缩后的种种,比如在磁盘上是怎么存放 ...

  3. Codeforces Global Round 1D(DP,思维)

    #include<bits/stdc++.h>using namespace std;int dp[1000007][7][7];int cnt[1000007];int main(){  ...

  4. vue使用过程常见的一些问题

    Vue目前的的开发模式主要有两种:1.直接页面级的开发,script直接引入Vue2.工程性开发,webpack+loader或者直接使用脚手架工具Vue-cli,里面的文件都配置好了 webpack ...

  5. findControl 可以获取前台页面的控件

    findControl 可以获取前台页面的控件

  6. ASPxGridView KeyFieldName

    KeyFieldName="查询表的主键名称"

  7. T-Sql操作Xml数据(转)

    T-Sql操作Xml数据 一.前言 SQL Server 2005 引入了一种称为 XML 的本机数据类型.用户可以创建这样的表,它在关系列之外还有一个或多个 XML 类型的列:此外,还允许带有变量和 ...

  8. P4213 【模板】杜教筛(Sum) min_25筛

    \(\color{#0066ff}{ 题目描述 }\) 给定一个正整数\(N(N\le2^{31}-1)\) 求 \(ans_1=\sum_{i=1}^n\varphi(i)\) \(ans_2=\s ...

  9. zabbix发送邮件脚本

    #!/usr/bin/env python #-*- coding: UTF- -*- import os,sys reload(sys) sys.setdefaultencoding('utf8') ...

  10. codeforces-473D Mahmoud and Ehab and another array construction task (素数筛法+贪心)

    题目传送门 题目大意:先提供一个数组,让你造一个数组,这个数组的要求是 1 各元素之间都互质  2  字典序大于等于原数组  3 每一个元素都大于2 思路: 1.两个数互质的意思就是没有公因子.所以每 ...