当前位置:  开发笔记 > 运维 > 正文

VS Post Build活动

如何解决《VSPostBuild活动》经验,为你挑选了3个好方法。

我想实现一个执行以下操作的post build事件

    DLL输出的相对路径副本(1个文件,而不是所有调试jazz)

    将输出DLL注册到GAC

这是怎么做到的?



1> Dirk Vollmar..:

你想要那吗?

copy $(TargetPath) $(TargetDir)..\..\someFolder\myoutput.dll
regasm $(TargetPath) 

(进入项目属性下的后期构建步骤的字段)


在Microsoft Visual Studio 2010中,这将失败,9009错误:你需要使用的完整路径regasm,如下所示:C:\ WINDOWS\Microsoft.NET\Framework64\v4.0.30319\regasm.exe $(TARGETPATH)

2> aku..:

在"项目属性 - >构建事件 - >后期构建事件命令行"中输入以下内容:

xcopy "$(TargetPath)" "target path" /Y && regasm "$(TargetPath)"

或者将以下代码段添加到项目(例如csproj)文件中


    xcopy "$(TargetPath)" "target path" /Y && regasm "$(TargetPath)"

请注意,建议在复制命令参数周围添加""以避免包含空格的路径出现问题.另请注意,可以使用&&组合多个命令



3> Neil Barnwel..:

您确定要在编译过程中执行此操作吗?如果可以避免,我建议在解决方案而不是GAC中使用项目引用.复制文件是一回事,但在GAC中注册是相当具有侵入性的,您可能需要考虑编译代码的其他环境.像其他开发人员的机器,测试环境/构建服务器等等.如果您有构建服务器你真的应该使用NAnt这样的东西和某种持续集成服务器.

推荐阅读
LEEstarmmmmm
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有