VS报:"dll标记为系统必备组件,必须对其进行强签名"错误
2014-08-26 09:39
465 查看
问题: VS生成程序时,报“要将程序集“XX.dll”标记为系统必备组件,必须对其进行强签名。”错误。 解决方法: 1)在报错的解决方案中找到一个可以发布的项目(引用该XX.dll的项目未必可以发布); 2)右击该项目,选择“属性”; 3)选择“发布”; 4)点击“应用程序文件”按钮; 5)找到该“XX.dll”,将发布状态有“系统必备”改为“包括(自动)”; 6)再次运行成功。
参考:
1、 首先说明一下:X是某程序集的名称,相当于数学中的未知数X。 看到这样的提示,开始我以为是把程序集X的发布状态设为“系统必备”了,我检查了一下,发现程序集X的发布状态是“包括(自动)”,看样子提示信息误本身有误,但发
布的包里有十几个程序集,单单是X出现了问题,原因必然和X有关,这个结论应该是没有错的。 后来经过几番折腾,终于找了问题原因: 被打包的程序由一个EXE程序集和十几个DLL程序集组成,EXE程序集和其中4个DLL程序集都引用了程序集X,但是其中有一个DLL程序集引用的是X的7.5版本,其他程序集引用
的是X的7.6版,这样导致了版本冲突,自然无法发布。 虽然.NET给出了错误提示,但里面还是包含了找出问题原因的线索,其他造成此错误的原因估计也应该和程序集的版本有关,希望此文对您有所帮助。 2、 最近编译经常偶尔出现标题这个错误,有时重启电脑,就正常了,有时重启也不行,真蛋疼,后来发现把dll预先拷贝到生成目录,也可以避免这个编译错误,但是实在是麻
烦,再去Google了半天,终于找到了解决方案:右击报错的项目=〉属性=〉发布=〉把这个dll的发布状态由“包括(自动)”改成“包括” 问题解决
相关文章推荐
- 要将程序集“xxx.dll”标记为系统必备组件,必须对其进行强签名
- 要将程序集“xxx.dll”标记为系统必备组件,必须对其进行强签名
- 错误处理:......标记为系统必备,必须对其进行强签名 收藏
- 错误处理:......标记为系统必备,必须对其进行强签名
- “XX标记为系统必备,必须对其进行强签名”错误处理
- 标记为系统必备组件,必须对其进行强签名
- 要将XX标记为系统必备,必须对其进行强签名
- 要将程序集“X”标记为系统必备,必须对其进行强签名-使用ClickOnce发布软件时碰到的问题之一
- SQL安装错误"以前进行的程序安装创建了挂起的文件操作。运行安装程序之前。必须重新启动计算机"
- SQL安装错误"以前进行的程序安装创建了挂起的文件操作。运行安装程序之前。必须重新启动计算机"
- 控件必须放在具有 runat=server 的窗体标记内"错误的解决方法
- 控件必须放在具有 runat=server 的窗体标记内"错误的解决方
- vs 错误1------"无法启动程序'...debug/abc.exe',系统找不到指定文件"的问题!
- "控件必须放在具有 runat=server 的窗体标记内"错误的解决方法
- "控件必须放在具有 runat=server 的窗体标记内"错误的解决方法
- 出现"若要针对 .NET Framework 4.0 或更高版本进行编译,则提供程序选项中“compilerVersion”特性的值必须为“v4.0”或更高版本。……"错误
- RECONFIGURE命令提示错误"不支持对系统目录进行即席更新"
- 错误:未报告的异常 java.io.IOException;必须对其进行捕捉或声明以便抛出
- "控件必须放在具有 runat=server 的窗体标记内"错误的解决方法
- "控件必须放在具有 runat=server 的窗体标记内"错误的解决方法