最近、すべてのプロジェクトをVisualStudio2012と.Net4.5にアップグレードしました。ほとんどのプロジェクトには、製品構成を処理するカスタムMMCスナップインがあります。ランタイムはMMC3.0がリリースされてからずっと後に出荷されたため、MMC3.0は.Net4.0ランタイムをネイティブに処理しないことを学びました。
スナップインを修正して、ロード時にMMCがクラッシュしないようにする方法を探しています。また、mmc.exe.configファイルの追加について言及しているページをたくさん見つけました。私はこれを試しましたが、動作させることができません。
これを内容としてファイルを作成しました。
<configuration>
<startup>
<supportedRuntime version='v4.0.20506' />
<requiredRuntime version='v4.0.20506' safemode='true' />
</startup>
</configuration>
これをmmc.exe.configとしてwindows\system32ディレクトリとwindows\sysWOW64ディレクトリの両方に保存しましたが、このファイルが存在しても違いはありません。私のスナップインはまだ同じエラーメッセージでクラッシュします:
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に.Net4.0ランタイムアセンブリを正しくロードさせるには、何をする必要がありますか?