在带有 Windows Server 2008 R2 的构建服务器上使用 Devenv.com 构建 VS 2003 解决方案
Posted
技术标签:
【中文标题】在带有 Windows Server 2008 R2 的构建服务器上使用 Devenv.com 构建 VS 2003 解决方案【英文标题】:Building VS 2003 Solution Using Devenv.com on Build Server With Windows Server 2008 R2 【发布时间】:2012-11-01 02:51:47 【问题描述】:我正在尝试在 Windows Server 2008 R2 机器上的 TFS 构建服务器 2008 上构建 .NET Framework 1.1 解决方案(VS 2003)。我正在按照本网站的说明进行操作
http://blogs.msdn.com/b/nagarajp/archive/2005/10/26/485368.aspx
并寻求建议的第二种解决方案。构建服务器很好地完成了前 4 个步骤(初始化构建、获取源、标记源和编译任何 cpu/版本的源),但之后它只显示构建正在进行中并且不执行任何操作。我让工作一夜之间运行,它仍然显示 Buiid In progress。我检查了事件日志,它显示以下消息:
The application (Visual Studio .NET 2003, from vendor Microsoft) has the following problem: Visual Studio .NET 2003 has a known compatibility issue with this version of Windows.
当我登录到构建服务器然后尝试打开 Visual Studio 2003 时,它会显示一个带有相同消息的弹出窗口,然后我必须单击运行程序才能继续。但由于我正在使用命令行构建解决方案,我想知道我该怎么做?我也尝试在兼容模式下运行这个程序(windows xp service pack 3)并检查了“禁用视觉主题”和“禁用桌面组合”选项,但没有运气。有人可以帮忙吗?
【问题讨论】:
【参考方案1】:这是 1.1 Framework 项目的配置文件的修改版本,用于在 Windows Server 2008 R2 上使用 Build Server 2008 进行构建:
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="DesktopBuild" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
<ProjectExtensions>
<ProjectFileVersion>2</ProjectFileVersion>
<Description></Description>
<BuildMachine>UNKNOWN</BuildMachine>
</ProjectExtensions>
<PropertyGroup>
<TeamProject>1.1 Framework</TeamProject>
<BuildDirectoryPath>UNKNOWN</BuildDirectoryPath>
<DropLocation>\\UNKNOWN\drops</DropLocation>
<RunTest>false</RunTest>
<RunCodeAnalysis>Never</RunCodeAnalysis>
<WorkItemType>Bug</WorkItemType>
<WorkItemFieldValues>System.Reason=Build Failure;System.Description=Start the build using Team Build</WorkItemFieldValues>
<WorkItemTitle>Build failure in build:</WorkItemTitle>
<DescriptionText>This work item was created by Team Build on a build failure. </DescriptionText>
<BuildlogText>The build log file is at:</BuildlogText>
<ErrorWarningLogText>The errors/warnings log file is at:</ErrorWarningLogText>
<UpdateAssociatedWorkItems>true</UpdateAssociatedWorkItems>
<AdditionalVCOverrides></AdditionalVCOverrides>
<CustomPropertiesForClean></CustomPropertiesForClean>
<CustomPropertiesForBuild></CustomPropertiesForBuild>
</PropertyGroup>
<ItemGroup>
</ItemGroup>
<ItemGroup>
<ConfigurationToBuild Include="Release|Any CPU">
<FlavorToBuild>Release</FlavorToBuild>
<PlatformToBuild>Any CPU</PlatformToBuild>
</ConfigurationToBuild>
</ItemGroup>
<ItemGroup>
</ItemGroup>
<PropertyGroup>
<VS2003_Devenv>C:\Program Files (x86)\Microsoft Visual Studio .NET 2003\Common7\IDE\devenv.com</VS2003_Devenv>
<VS2003_Configuration>Release</VS2003_Configuration>
</PropertyGroup>
<ItemGroup>
<VS2003_OutputFiles Include="$(SolutionRoot)\DSC.STARS\Main\DSC.STARS.Web\**\*.*" />
</ItemGroup>
<Target Name="AfterCompile">
<Exec Command=""$(VS2003_Devenv)" "$(SolutionRoot)\DSC.STARS\Main\DSC.STARS.SOLUTION.sln" /build release" />
<MakeDir Directories="$(BinariesRoot)\$(VS2003_Configuration)" Condition="!Exists('$(BinariesRoot)\$(VS2003_Configuration)')" />
<Copy SourceFiles="@(VS2003_OutputFiles)" DestinationFiles="@(VS2003_OutputFiles- >'$(BinariesRoot)\$(VS2003_Configuration)\%(RecursiveDir)%(Filename)%(Extension)')"/>
</Target>
</Project>
【讨论】:
以上是关于在带有 Windows Server 2008 R2 的构建服务器上使用 Devenv.com 构建 VS 2003 解决方案的主要内容,如果未能解决你的问题,请参考以下文章
带有 COM 的经典 ASP 在 Windows Server 2008 R2 上抛出“未找到数据源名称且未指定默认驱动程序”
在 Server 2008 上的 Windows 服务中托管 WCF 服务时应该使用啥帐户?
windows server 2012 可以安装sql2008 吗
在 MFC CPropertySheet 中添加 ActiveX 控件的问题(Windows 7 64 位和 Windows 2008 Server)