首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >ALINK :警告AL1073:引用的程序集'mscorlib.dll‘指向不同的处理器

ALINK :警告AL1073:引用的程序集'mscorlib.dll‘指向不同的处理器
EN

Stack Overflow用户
提问于 2014-08-18 22:22:19
回答 6查看 29.1K关注 0票数 41

我们使用的是VS2013和.Net 4.5.1(最近迁移的版本,但这个错误是从.Net 4.0开始的)。只有在平台目标x64中编译项目时,才会发生此错误。这真的是一个会在运行时中断的错误吗?为什么MSBUILD不能正确解析这个mrcorlib.dll?这只会发生在VS2010中创建的项目中,而不会出现在新创建的项目中。我在这里错过了什么。我所有的第三方程序集都在x64bit中。

在TeamCity构建服务器中,我收到以下错误:

代码语言:javascript
复制
GenerateSatelliteAssemblies
[17:01:18]AL
[17:01:18]C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\AL.exe /culture:de /keyfile:..\..\MyApp.snk /out:obj\x64\Release\de\MyApp.Hardware.Softing.resources.dll /platform:x64 /template:obj\x64\Release\MyApp.Hardware.Softing.dll /embed:obj\x64\Release\MyApp.Hardware.Softing.Properties.Resources.de.resources
[17:01:18]ALINK warning AL1073: Referenced assembly 'mscorlib.dll' targets a different processor
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2015-06-25 02:04:47

虽然@jero2rome引用的错误已被关闭,但VS2015 RC w/ .NET 4.6不再发出此警告:

在VS2013/.NET 4.5.1中,我会看到同样的问题:

代码语言:javascript
复制
GenerateSatelliteAssemblies:
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\AL.exe /culture:zh-CHT /out:obj\x64\Debug\zh-CHT\MyComponent.resources.dll /platform:x64 /template:obj\x64\Debug\MyComponent.dll /embed:obj\x64\Debug\MyComponent.Resources.string.zh-CHT.resources
ALINK : warning AL1073: Referenced assembly 'mscorlib.dll' targets a different processor [c:\svn\project\MyComponent.csproj]

对于VS2015 RC/.NET 4.6,不会发出警告:

代码语言:javascript
复制
GenerateSatelliteAssemblies:
C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools\x64\AL.exe /culture:zh-CHT /out:obj\x64\Debug\zh-CHT\MyComponent.resources.dll /platform:x64 /template:obj\x64\Debug\MyComponent.dll /embed:obj\x64\Debug\MyComponent.Resources.string.zh-CHT.resources
票数 8
EN

Stack Overflow用户

发布于 2014-08-25 22:51:35

可以安全地忽略此警告。因为.Net会在运行时在64位机器上加载正确的64位程序集。微软仍然可以对这个问题给出一个可靠的答案。这是不必要的浪费时间的警告。

票数 11
EN

Stack Overflow用户

发布于 2017-04-12 04:31:10

我们遇到了同样的问题,最终得到了Matt Smith的变通方法(https://stackoverflow.com/a/41945190/3506760),但只做了一个修改,使其能够工作。

由于MsBuild (https://stackoverflow.com/a/1367309/3506760)中的特性/错误,我们需要修改步骤1中描述的目标文件。

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <Target Name="MsBuildAL1073WarningWorkaround" BeforeTargets="BeforeBuild" >
        <PropertyGroup Condition="'$(Platform)' == 'x64'">
            <TargetFrameworkSDKToolsDirectory>$(TargetFrameworkSDKToolsDirectory)$(Platform)\</TargetFrameworkSDKToolsDirectory>
        </PropertyGroup>
    </Target>
</Project>
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25365616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档