相关疑难解决方法(0)

如何将CLR 2应用程序作为CLR 4应用程序运行

假设我有一个旧的应用程序,它将尝试加载外部程序集.

  • 旧的应用程序编译为CLR 2.
  • 新程序集将编译为CLR 4.

我希望能够在CLR 4中运行那个旧的应用程序.我记得有一些xml清单魔法涉及.

如何创建清单xml文件以告知oldapplication.exe应在CLR 4下运行?

我找到了一些建议,但它们似乎对我不起作用.

oldapplication.exe.config:

<?xml version ="1.0"?>
<configuration>
 <startup>
      <!--set the appropriate .net version-->
      <requiredRuntime version="4.0.0.0"/>
 </startup>
</configuration>
Run Code Online (Sandbox Code Playgroud)

在给另一个镜头时,我发现这个文件作为我的模板:

C:\ WINDOWS\Microsoft.NET \框架\ v4.0.20506\Aspnet_regsql.exe.config

<?xml version ="1.0"?>
<configuration>
    <startup>
        <supportedRuntime version="v4.0.20506"/>
        <requiredRuntime version="v4.0.20506" safemode="true"/>
    </startup>
</configuration>
Run Code Online (Sandbox Code Playgroud)

我还更新了代码来报告当前的CLR:

Console.WriteLine(typeof(object).Assembly.ImageRuntimeVersion);
Run Code Online (Sandbox Code Playgroud)

它现在有效!

.net clr

8
推荐指数
1
解决办法
3337
查看次数

标签 统计

.net ×1

clr ×1