独自に作成した他の多数の dll を呼び出す .net Windows サービス アプリケーションがあります。ただし、これらの dll はすべて x86 用に作成されたものであり、その後 Any CPU (x64 環境) に移行しました。残念ながら、.NET の遅延読み込み機能のおかげで、これらの dll の多くは、まれでやや複雑なコード パスを実行しない限り読み込まれません。正味の結果は?コードをデプロイしてから数日または数週間後に、不適切な形式の例外が発生します。
.NET が直接参照するすべてのアセンブリを強制的に完全にロードする方法があるかどうかを知りたいので、これらの依存 dll が作成された多数のプロジェクトを手動で調べたり、完全な回帰を行ったりすることなく、そのような非互換性を確認できます。すべてのアセンブリを強制的にロードするテスト。
補遺: 特定の x86-dlls-in-a-x64-environment の問題を解決する簡単な方法があるとしても、環境にすべての依存関係を強制的にロードさせる方法があるかどうかを確認したいと思っています。いつ役に立つかわかりません!:)
編集:これらはすべてマネージド DLL であり、実際にリフレクションを使用して本番環境で問題をトリアージしました。ただし、開発環境では、他のオプションと同じ問題が発生します。すべての DLL を何らかの方法で手動でトラバースすることです。