为什么我的构建后事件在一台PC上工作而在另一台PC上工作?

时间:2015-05-28 15:56:18

标签: c# batch-file build cmd post-build-event

我正在尝试运行后期构建事件以使我的可执行文件大地址识别。在我的本地电脑上,活动有效。在公司的构建机器上它没有。以下是所有后期制作活动:

call "$(VS110COMNTOOLS)..\Tools\vsvars32.bat"
editbin /largeaddressaware $(TargetPath)
$(SolutionDir)XClusterBuildCompleteEvent.bat $(SolutionDir) $(ConfigurationName) $(PlatformName) $(TargetDir) $(TargetName) 1

在公司的构建机器上运行时,我收到以下错误:

  

C:\的Windows \ Microsoft.NET \框架\ v4.0.30319 \ Microsoft.Common.targets   (4291):命令“调用”C:\ Program Files(x86)\ Microsoft Visual   Studio 11.0 \ Common7 \ Tools .. \ tools \ vsvars32.bat“editbin   / LARGEADDRESSAWARE   d:\ Builds_test \ XTool \ 4.3.1_4GB_ClusterController \ IBUAgent1 \二进制\ ServiceRunner.exe   d:\ Builds_test \ XTool \ 4.3.1_4GB_ClusterController \ IBUAgent1 \ CommonFileMover.bat   D:\ Builds_test \ XTool \ 4.3.1_4GB_ClusterController \ IBUAgent1 \ Release   d:\ Builds_test \ XTool \ 4.3.1_4GB_ClusterController \ IBUAgent1 \二进制\   ServiceRunner XCluster“退出代码255。

在研究这个问题时,显然“调用”是一个批处理文件命令,无论出于什么原因,它在这种情况下并不总是有效。所以我尝试用“cmd / c”替换它。这摆脱了构建错误,但可执行文件没有改变为大地址识别。好像它跳过了“editbin”部分。然而,最后一次构建后的事件仍然有效。

我也尝试过不在第一个构建后步骤之前放置任何命令,但这导致了与“cmd / c”相同的行为。

我需要做什么才能让“call”在构建机器上工作或者让“editbin”步骤正常运行?

0 个答案:

没有答案