1

我正在开发一个项目,该项目要求我们通过 COM 互操作项目从 VB6 应用程序启动 .NET 4 (C#)/WPF 窗口。WPF 窗口包含对 Microsoft Ribbon for WPF 组件(RibbonControlsLibrary.dll,作为 .NET 互操作项目中的依赖项)的引用。从 .NET 测试客户端打开窗口时一切正常,但是从 VB6 打开窗口时,我在功能区实例化期间收到 XamlParseException。进一步的调试表明该窗口无法解析,因为它无法找到 RibbonControlsLibrary.dll,尽管它已成功复制到互操作项目的输出目录。从窗口的 XAML 定义中删除功能区声明允许它从 .NET 和 VB6 成功启动。

这个特殊的 VB6 项目有几个相应的 .NET 互操作项目,它们以这种方式引用纯 .NET 组件,完全没有问题。RibbonControlsLibrary 组件有什么不同,足以导致这种行为?

4

1 回答 1

0

这里的问题毕竟不是程序集绑定问题。无论出于何种原因,当 VB6 通过 .NET COM 互操作类访问该库时,似乎无法识别 RibbonButton 的 SmallImageSource 属性。在我的情况下,此属性不是必需的,因此删除它可以解决问题。

于 2011-10-19T20:05:44.303 回答