C# 代码符号中的几个问题

C# 代码符号中的几个问题,c#,.net,visual-studio-2010,code-signing,setup-project,C#,.net,Visual Studio 2010,Code Signing,Setup Project,我在为我的VisualStudio项目进行代码签名时遇到了困难。我的Visual Studio解决方案中有多个项目。每个项目生成不同的程序集。我正在尝试为所有这些项目的输出制作一个安装程序 我已经创建了一个批处理脚本,用于对程序集进行签名。我能够成功地签署我的项目的程序集 我甚至成功地签署了MSI安装程序 那么,我遇到了什么问题 我面临的问题是,当我在VisualStudio中构建安装和部署项目时,在安装中添加的程序集没有签名。尽管如此,我还是在构建安装项目之前成功地签署了它们 我在这里发现两篇

我在为我的VisualStudio项目进行代码签名时遇到了困难。我的Visual Studio解决方案中有多个项目。每个项目生成不同的程序集。我正在尝试为所有这些项目的输出制作一个安装程序

我已经创建了一个批处理脚本,用于对程序集进行签名。我能够成功地签署我的项目的程序集

我甚至成功地签署了MSI安装程序

那么,我遇到了什么问题

我面临的问题是,当我在VisualStudio中构建安装和部署项目时,在安装中添加的程序集没有签名。尽管如此,我还是在构建安装项目之前成功地签署了它们

我在这里发现两篇关于stackoverflow的文章也有类似的问题:

但这对我来说也不管用。在构建安装项目之前,我已尝试对项目的OBJ文件进行签名。但是,添加到项目中的程序集仍然没有签名

所以,我投降了,想在这里提出一个问题。任何帮助都将不胜感激

谢谢

关于
Aman

在安装和部署项目的文件系统页面中,我发现右键单击“主要输出自…”选择“输出”显示它使用.dll内置\obj\Debug\myfile.dll

在更改了构建后命令行之后,它对我起了作用。将其更改为以下内容:

 cscript "C:\signmyfile.vbs" "$(ProjectDir)\obj\$(ConfigurationName)\$(TargetFileName)"
其中“C:\signmyfile.vbs”是您的签名方法


编辑:在我使用cscript时将.bat更改为.vbs

何时对程序集进行签名?重建安装和部署项目会导致重建所有引用的项目,我建议为每个项目(右键单击项目、属性、生成事件)设置生成后事件,在生成后对程序集进行签名。我已在生成后事件中添加了代码签名命令,并在“运行项目属性中的“生成后:”组合框。但安装程序中仍然没有对程序集进行签名。:(当我生成单个项目时,它们的程序集已成功签名,但当我生成安装项目时,则没有。我在C#projects解决方案中使用批处理脚本,因此,我必须使用关键字“call”更改“cscript”“在你的剧本中,它对我起了作用。:)非常感谢,老兄……在寻找问题的解决方案很久之后,我非常累……你救了我一天:)非常感谢。。。。!我认为您需要删除
$(ProjectDir)
之后的“\”,因为它是自动插入的。您可能还需要包括构建平台。例如'cscript“C:\signmyfile.vbs”“$(ProjectDir)obj\$(平台)\$(配置名称)\$(目标文件名)”。