【问题标题】:Howto Force TFS 2010 to build a website using the 32bit ASPNET Compiler on a 64 bit build machine如何强制 TFS 2010 在 64 位构建机器上使用 32 位 ASP NET 编译器构建网站
【发布时间】:2011-07-21 20:28:41
【问题描述】:

我们有一个非常大的产品,它在我们的 32 位构建控制器上编译得很好,而且大部分在我们的 64 位构建控制器上都可以编译,但有一个例外。我们有一个预编译的 Web 表单前端。当它在 64 位机器上构建时,它会在日志文件中显示命令行 *C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_compiler.exe -v /ourwebapp -p ..\ourwebapp\ -u -f "........\Binaries\Mixed Platforms_PublishedWebsites\ourwebapp\"* 由于我们有一些 32 位第三方 dll,这会导致错误: ASPNETCOMPILER:错误 ASPCONFIG:无法加载文件或程序集“Leadtools.Codecs”或其依赖项之一。试图加载格式不正确的程序。 [C:\Builds\5\OurApp\OurApp Build\Sources\Product\Solutions\ourwebapp_ourwebapp.metaproj]

有没有人知道正确的解决方案文件语法来强制 32 位构建无论如何。 谢谢。

【问题讨论】:

    标签: tfs aspnet-compiler


    【解决方案1】:

    编辑您的构建定义并选择此选项。

    Process Tab-> Advance->MSBuild Platform->X86
    

    保存您的构建并触发构建...

    【讨论】:

    • 令人惊讶的是,在尝试了其他所有方法之后,这对我有用。谢谢。
    • 也为我工作。好东西
    【解决方案2】:

    Erik,如果您编辑构建定义,则在进程选项卡下可以选择将 msBuild 编译设置为 x86 或 x64 或自动,将其设置为 x86 将强制构建以 32 位执行编译。

    在“要构建的配置”框中,您可以指定要构建的平台和配置。 (要显示此框,请展开Required 节点,然后展开Items to Build 节点。)例如,您可以通过包含Release| 来指定此构建应仅构建C++ 项目的32 位版本的发布配置。 x86 在这个盒子里。如果您将要构建的配置框留空,则会构建在每个解决方案或项目中定义的默认配置和平台。

    请参阅此处的步骤。 http://msdn.microsoft.com/en-us/library/dd647547.aspx

    【讨论】:

    • 我理解这是一个“正常”的解决方案,但在 VS 2010 Web 项目中,只有 Debug/Release + Any CPU 平台的选项没有 x86/x64 甚至新选项。除非我遗漏了什么,否则无法为网站指定应该构建哪些平台。
    • - Erik,您可以通过右键单击解决方案并单击配置管理器来配置一个。 - 创建新配置。然后编辑您的构建定义,您可以选择将要构建的解决方案关联起来,就在您可以选择构建配置的下方。
    猜你喜欢
    • 2013-06-13
    • 1970-01-01
    • 2011-12-17
    • 2014-11-27
    • 2013-11-07
    • 2019-02-13
    • 2012-03-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多