COM相互運用機能プロジェクトを介してVB6アプリケーションから.NET4(C#)/WPFウィンドウを起動する必要があるプロジェクトに取り組んでいます。WPFウィンドウには、Microsoft Ribbon for WPFコンポーネント(RibbonControlsLibrary.dll、.NET相互運用機能プロジェクトに依存関係として含まれています)への参照が含まれています。ウィンドウを.NETテストクライアントから開くとすべて正常に機能しますが、VB6から開くと、リボンのインスタンス化中にXamlParseExceptionが発生します。さらにデバッグすると、相互運用プロジェクトの出力ディレクトリに正常にコピーされているにもかかわらず、RibbonControlsLibrary.dllが見つからないため、ウィンドウの解析に失敗していることがわかります。ウィンドウのXAML定義からリボン宣言を削除すると、.NETとVB6の両方から正常に起動できるようになります。
この特定のVB6プロジェクトには、この方法で純粋な.NETコンポーネントをまったく問題なく参照する対応する.NET相互運用プロジェクトがいくつかあります。この動作を引き起こすのに十分な違いがあるRibbonControlsLibraryコンポーネントはどうですか?