我在 Visual Studio 2010 中有一个项目。 该项目具有以下构建后事件命令行:
SET TARGET_PROJECT=TestMain
IF NOT EXIST "$(TargetDir)IceBox" (
XCOPY /E /I /Y "$(SolutionDir)Externals\IceBox" "$(TargetDir)IceBox"
)
IF NOT EXIST "$(TargetDir)bzip2.dll" (
COPY "$(SolutionDir)Externals\IceBox\bzip2.dll" "$(TargetDir)"
)
XCOPY /E /I /Y "$(SolutionDir)Externals\Infragistics" "$(TargetDir)"
但是这个命令仅在我创建调试或发布时使用。当我发布我的项目时,此命令将被忽略。 当我发布项目时可以使用此命令吗?
感谢您的帮助。
最佳答案
我最近遇到了类似的问题。我想“仅”在发布应用程序时运行命令,而不是在每次构建时都运行命令。
我添加了一个帖子发布 task 。 因为我不使用MSBuild我直接修改了我的解决方案csproj文件。
示例:
解决方案名称:MyKillerApp
项目文件名:MyKillerApp.csproj
使用 Notepad++ 或其他文本编辑器打开文件,然后导航到文件末尾并找到此部分(应该几乎在末尾):
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
</PropertyGroup>
然后添加您的发布后任务
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
</PropertyGroup>
<Target Name="AfterPublish">
<Exec Command="..\..\Documentation\DoxyGenExe\createDocs.bat" />
</Target>
我的任务运行一个bat文件,该文件运行Doxygen (一个非常好的文档创建程序)和一些其他任务。
你可以创建一个bat文件来运行任何命令,非常方便
关于visual-studio-2010 - 用于发布的构建后事件命令 (Visual Studio 2010),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15090558/