平台目标(x86 / x64 / AnyCPU)是否对.net卫星程序集很重要

时间:2019-01-29 19:51:05

标签: c# .net winforms

.NET应用程序提供用户界面时,.net resource / satellite assemblies将提供特定于语言的资源(如文本)。然后,由不同的程序集提供不同语言的文本资源。 当satellite assemblies仅包含资源且无需为特定平台执行/编译任何代码时-目标平台(x86 / x64 / AnyCPU)是重要的还是被忽略了?

1 个答案:

答案 0 :(得分:1)

对于纯程序集(不是不安全的,并且不使用互操作的程序集),位数在清单中有点,并且不影响代码生成。因此,纯附属程序集应该以任何CPU为目标。

由ac#进程的启动方式与启动标志一起推断出ac#进程的位数:由于这个原因,入口点程序集仅应在整个应用程序中使用纯程序集且运行时不存在副作用的情况下,以任何cpu为目标。在一个平台而不是另一个平台上。在其他所有情况下,它们都应针对正确的平台。

在程序集探测期间不会忽略位数,因此,如果32位可执行文件需要64位程序集,则将找不到该程序集并引发异常。平台无关组件被认为是“如过程期望的那样”。