我们最近将所有项目升级到 Visual Studio 2012 和 .Net 4.5。我们的大多数项目都有处理产品配置的自定义 MMC 管理单元。我现在了解到 MMC 3.0 本身并不能处理 .Net 4.0 运行时,因为运行时是在 MMC 3.0 发布很久之后才发布的。
我正在寻找一种方法来修复我们的管理单元,以便 MMC 在加载时不会崩溃,并且我遇到了很多提到添加 mmc.exe.config 文件的页面。我已经尝试过了,但我无法让它工作。
我创建了一个文件,其内容如下:
<configuration>
<startup>
<supportedRuntime version='v4.0.20506' />
<requiredRuntime version='v4.0.20506' safemode='true' />
</startup>
</configuration>
我在 windows\system32 和 windows\sysWOW64 目录中都将它保存为 mmc.exe.config,但是这个文件的存在没有任何区别。我的管理单元仍然崩溃并显示相同的错误消息:
Could not load file or assembly 'xxxx, Version=1.0.0.0, Culture=neutral, PublicKeyToken=d62dabb4275ffafc' or one of its dependencies. This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded.
我需要做什么才能让 MMC 正确加载 .Net 4.0 运行时程序集?