SGEN:错误:混合模式组装

时间:2015-05-29 12:09:44

标签: .net-assembly sgen

当我在发布模式下发布项目时,任何人都可以帮我解决此错误

SGEN:错误:混合模式程序集是针对版本' v2.0.50727'运行时的运行时,如果没有其他配置信息,则无法在4.0运行时加载。

请帮助我解决这个问题。

2 个答案:

答案 0 :(得分:0)

要在发布模式下构建/发布,请按照以下步骤进行操作

  1. 以sgen.exe.config
  2. 创建一个新文件
  3. 在该文件中保留以下代码
  4. <?xml version ="1.0"?> <configuration> <runtime>
    <generatePublisherEvidence enabled="false"/>
    </runtime> <startup useLegacyV2RuntimeActivationPolicy="true"> <supportedRuntime version="v4.0"/> </startup> </configuration>

    1. 请将此文件保存在以下路径

      C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.1A \ bin \ NETFX 4.5.1工具文件夹

      适用于x64

      C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.1A \ bin \ NETFX 4.5.1工具\ x64文件夹

    2. 现在重新启动Visual Studio
    3. 以管理员模式打开项目,以及在发布模式下构建/发布。

答案 1 :(得分:0)

Microsoft支持(https://support.microsoft.com/en-za/help/2572158/sgen-mixed-mode-assembly-is-built-against-version-v2-0-50727-of-the-ru)中有一个答案,内容为: 为了在4.0中使用混合模式程序集,必须在Sgen的配置文件中对其进行配置

决议

将以下信息添加到位于以下位置的sgen.exe.config文件中:.. \ Program Files \ Microsoft SDKs \ Windows \ v7.0A \ bin \ NETFX 4.0 Tools \

<?xml version ="1.0"?>
<configuration>
    <startup useLegacyV2RuntimeActivationPolicy="true">
        <supportedRuntime version="v4.0" />
    </startup>   
</configuration>

对于Visual Studio 2017,路径是不同的,可能类似于:c:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v10.0A \ bin \ NETFX 4.6.1 Tools \