标签: post-build-event

如何在构建后事件中获取版本号

我想使用post-build事件自动创建一个nuget包,然后将其复制到我们网络上的共享文件夹,类似这样(版本号1.0.0.0.在MyLib.nuspec文件中指定):

nuget.exe pack "$(SolutionDir)MyLib.nuspec"
xcopy /Y "$(TargetDir)MyLib.1.0.0.0.nupkg" \\folder\subfolder\NuGetPackages
Run Code Online (Sandbox Code Playgroud)

这有效,但现在我想更新这个脚本,以便它也包括程序集版本,但我无法在构建后事件中获得程序集版本.我需要这样的东西:

nuget.exe pack -Version $(AssemblyVersion) "$(SolutionDir)MyLib.nuspec"
xcopy /Y "$(TargetDir)MyLib." + $(AssemblyVersion) + ".nupkg" \\folder\subfolder\NuGetPackages
Run Code Online (Sandbox Code Playgroud)

但是$(AssemblyVersion)变量不存在......有什么想法吗?

.net .net-4.0 visual-studio-2010 assemblyversions post-build-event

13
推荐指数
1
解决办法
8984
查看次数

Visual Studio Post Build Event MT.exe命令失败,代码为9009

嗨我正在运行我的post build事件中的以下命令:

C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\mt.exe -manifest "$(ProjectDir)$(TargetName).exe.manifest" -updateresource:"$(TargetDir)$(TargetName).exe;#1"
Run Code Online (Sandbox Code Playgroud)

退出代码9009失败了......我不明白为什么会这样; 有什么建议?

post-build-event visual-studio

12
推荐指数
2
解决办法
3万
查看次数

在构建后事件上更新本地nuget包

我的本地nuget库存储库分别用于我的个人和工作相关的类库.

我已经为不再开发的库创建了一些nuget包.我只为他们这样做,因为我不知道如何在项目构建后自动更新它们.

我认为所有的工作都是由nuget命令行和Visual Studio命令提示符完成的.所以我可以很容易地完成我需要的工作(当然我会完全了解命令而不是!)

基本上我希望在项目的post-build事件上执行以下任务.

在项目构建上:

  1. 将项目dll复制到特定文件夹(nuget包的lib文件夹)
  2. 更新nuspec文件以获取新文件版本(我的项目正在增加每个版本的文件版本)
  3. 使用新文件版本创建新的nupkg文件

Phil Haack展示了这个功能,但据我所知,它仍然是一个原型.

所以我的要求是上面的.有没有其他人完成这个?

c# asp.net post-build-event visual-studio nuget

12
推荐指数
3
解决办法
1万
查看次数

如何从C#项目的构建事件中访问Visual Studio解决方案级平台?

我们有一个大型的VS 2010解决方案,主要是C#代码,但有一些本地DLL,各种C#项目依赖(包括我们的单元测试DLL).我们正在尝试支持32位和64位版本的库.所以我们现在将本机DLL构建为32位和64位.问题是我们的很多C#项目都有后期构建事件,它们将所需的本机DLL复制到项目的TargetDir中.现在我们有两个不同版本的本机DLL(32位和64位),我需要能够指定正确的dir来复制本机DLL.我原本以为我可以简单地在路径中使用$(Platform),如下所示:

copy $(SolutionDir)\NativeDll\$(Platform)\$(Configuration) $(TargetDir)
Run Code Online (Sandbox Code Playgroud)

但这不起作用,因为$(Platform)是项目的平台,而不是解决方案级平台.在这种情况下,$(平台)是"任何CPU".从我所看到的C#项目中的后期构建事件宏看,似乎没有办法访问正在构建的解决方案级平台.有没有更好的方法来实现我的目标?

c# 64-bit post-build-event 32bit-64bit visual-studio

12
推荐指数
1
解决办法
4545
查看次数

如何从$(ProjectDir)中删除tralling反斜杠?

我的post-build事件中有一个这样的命令行:

aspnet_regiis -pef connectionStrings "$(ProjectDir)" -prov "DataProtectionConfigurationProvider"
Run Code Online (Sandbox Code Playgroud)

但是aspnet_regiis由于\目录中的tralling 而返回失败.传递全名,path + web.config也不起作用.

我怎么解决这个问题?

.net windows post-build-event visual-studio-2013

12
推荐指数
1
解决办法
2413
查看次数

使用Resource Hacker在构建后更改图标

这个问题写在几个地方(比如这里这里).

在第二个问题中,有一条评论说要使用

ResHacker.exe -addoverwrite "Project.exe", "Project.exe", "ProgramIcon.ico", ICONGROUP, MAINICON, 0
Run Code Online (Sandbox Code Playgroud)

我也试过用-modify而不是-addoverwrite

ResHacker.exe -modify "Project.exe", "Project.exe", "ProgramIcon.ico", ICONGROUP, MAINICON, 0
Run Code Online (Sandbox Code Playgroud)

但结果是一样的.

图标已更改:如果我右键单击exe文件并检查属性,我看到图标已更改,但在Windows资源管理器中,我仍然看到旧图标.

如果我用Resource Hacker打开它(所以不使用它作为命令行工具,而是作为普通的GUI工具),我在"打开文件"对话框中看到了正确的图标.

有人可以提出解决方案吗?我试图在Delphi post build事件中使用它.

delphi explorer icons embedded-resource post-build-event

11
推荐指数
2
解决办法
6220
查看次数

Visual Studio postbuild - 更改为解决方案驱动器

在Visual Studio postbuild中,我需要运行批处理文件.该解决方案可能与Visual Studio运行的驱动器位于不同的驱动器上.在postbuild中,如何确定运行解决方案的驱动器号,以便在运行批处理文件之前更改为该驱动器?目前,我所拥有的只是:

CD $(ProjectDir)
$(ProjectDir)postbuild.bat
Run Code Online (Sandbox Code Playgroud)

问题是当目录位于不同的驱动器上时更改目录不会更改当前目录,因为您必须手动更改您所在的驱动器,例如:

E:\
CD $(ProjectDir)
$(ProjectDir)postbuild.bat
Run Code Online (Sandbox Code Playgroud)

我不能保证解决方案将会在什么驱动器上,所以我需要通过某种宏来确定驱动器,以确保postbuild.bat文件将从当前位置运行.

post-build-event visual-studio

10
推荐指数
1
解决办法
2897
查看次数

用于发布的构建后事件命令(Visual Studio 2010)

我在visual studio 2010中有一个项目.这个项目有以下post-build事件命令行:

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)"
Run Code Online (Sandbox Code Playgroud)

但是这个命令只在我创建调试或发布时使用.当我发布我的项目时,将忽略此命令.在发布项目时,是否可以使用此命令?

谢谢你的帮助.

publish visual-studio-2010 post-build-event

10
推荐指数
1
解决办法
8874
查看次数

如何在Visual Studio的后期构建事件中使用msbuild?

我正在尝试在Visual Studio项目中配置YUICompressor.NET.

据我所知,我必须创建一个.proj文件并将其添加到我的解决方案中.之后,我需要创建一个构建后的事件来构建这个.proj文件,然后我将得到我想要的输出(缩小的js/css文件).

所以我有:

visual studio解决方案资源管理器

这个.proj包含:

<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/MsBuild/2003">

  <UsingTask TaskName="CssCompressorTask" AssemblyFile="\..\packages\YUICompressor.NET.MSBuild.2.7.0.0\lib\NET20\Yahoo.Yui.Compressor.Build.MsBuild.dll" />
  <UsingTask TaskName="JavaScriptCompressorTask" AssemblyFile="\..\packages\YUICompressor.NET.MSBuild.2.7.0.0\lib\NET20\Yahoo.Yui.Compressor.Build.MsBuild.dll" />

  <Target Name="Minify">

    <ItemGroup>
      <!-- Single files, listed in order of dependency -->
      <CssFiles Include="Content\*.css"/>
      <JavaScriptFiles Include="Scripts\*.js"/>      
    </ItemGroup>

    <CssCompressorTask
          SourceFiles="@(CssFiles)"
          OutputFile="Content\min.css"
       />

    <JavaScriptCompressorTask
          SourceFiles="@(JavaScriptFiles)"
          OutputFile="Scripts\min.js"
       />

  </Target>
</Project>
Run Code Online (Sandbox Code Playgroud)

我正在尝试将其构建如下:

在此输入图像描述

我收到以下错误:

The command "msbuild C:\Users\Me\Desktop\MvcApplicationExample\MvcApplicationExample\YuiCompressorMsBuild.proj" exited with code 9009.
Run Code Online (Sandbox Code Playgroud)

此错误表明"msbuild"不是有效命令.那么,我该如何构建这种类型的项目呢?(我已经按照本教程:youtube)

谢谢你的帮助.

visual-studio-2010 yui-compressor post-build-event

10
推荐指数
2
解决办法
8530
查看次数

在Visual Studio Post-build事件中删除整个文件夹

我正在尝试使用以下命令行删除输出目录中的文件夹:

del /F "$(TargetDir)Content\"
Run Code Online (Sandbox Code Playgroud)

我总是最终退出错误代码1.我尝试了几种不同的方式,没有/ F,前后都有/没有斜线等.

Error   1   The command "del /F "E:\proj\bin\Windows\Debug\Content\"" exited with code 1.
Run Code Online (Sandbox Code Playgroud)

关于在visual studio中的后期构建事件命令行中删除文件有很多问题,它工作正常,但我似乎无法删除文件夹而不获取代码1.

任何帮助表示赞赏!

visual-studio-2010 post-build-event visual-studio

10
推荐指数
1
解决办法
8712
查看次数