.NET 4.0 互操作类型嵌入问题
在 .NET 4.0 中使用“ActiveHomeScriptLib”程序集的开发人员可能会遇到错误:“无法嵌入互操作类型‘ActiveHomeScriptLib.ActiveHomeClass’。请改用适用的接口。” 这个问题在.NET 3.5中不会出现。
了解互操作程序集
互操作程序集弥合了托管 (.NET) 代码和非托管 COM(组件对象模型)组件之间的差距。 它们实现了这些不同环境之间的通信。
根本原因
.NET 4.0 允许将主互操作程序集 (PIA) 直接嵌入到您的应用程序中,从而避免单独部署。然而,并非所有组件都适合嵌入。 “ActiveHomeScriptLib”程序集就是这样的一个例子。
分辨率
解决方案涉及防止互操作类型的嵌入。 在 Visual Studio 2010 中,找到“ActiveHomeScriptLib”程序集引用的“属性”窗口,并将“嵌入互操作类型”属性设置为“False”。
进一步考虑
正如 Michael Gustus 所指出的,从相关类型中删除“.Class”后缀也可能会解决该错误。
以上是为什么我无法在 .NET 4.0 应用程序中嵌入互操作类型'ActiveHomeScriptLib.ActiveHomeClass”?的详细内容。更多信息请关注PHP中文网其他相关文章!