首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Excel COM Interop - tlbimp与主WrapperTool

Excel COM Interop - tlbimp与主WrapperTool
EN

Stack Overflow用户
提问于 2010-06-08 01:31:51
回答 2查看 3.2K关注 0票数 7

我正在尝试向我的.NET项目添加ActiveX Microsoft Excel11.0对象库。添加时,我们的机器之间的命名空间是不同的。

事实证明,不同之处在于,当我添加引用时,它使用tlbimp作为WrapperTool,但对于他来说,它使其成为primary引用。

我如何让它以同样的方式为我们两个人工作呢?他的机器不喜欢tlbimp导入的互操作,我的机器也不喜欢primary互操作。

EN

回答 2

Stack Overflow用户

发布于 2010-07-07 21:55:05

我们遇到了类似的问题,选项"tlbimp“在所有计算机上都有效。

我(不完全)的理解是:.NET使用包装程序集来访问COM组件。如果指定"primary",则使用现有的、预先生成的“主互操作程序集”。根据http://msdn.microsoft.com/en-us/library/hfac4fky.aspx的说法,“主互操作程序集是由与它们所描述的类型库相同的发布者提供的”。如果使用“主程序集”对您不起作用,则此程序集在您的计算机上不存在。

默认值是"tlbimp“,并且(根据我收集的)应该可以正常工作。如果它在您同事的机器上不起作用,错误消息将会有所帮助。报告了VS2003的错误(搜索知识库文章“在安装Windows XP Service Pack2后在Visual Studio .NET中添加对COM对象的引用时收到错误消息”),但我不知道这是否适用于VS的当前版本。

希望这能有所帮助。

票数 6
EN

Stack Overflow用户

发布于 2014-06-20 23:29:36

我可以通过编辑注册表来解决这个问题:

HKEY_CLASSES_ROOT\TypeLib{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}\2.4

这是存在的,我添加了以下字符串值:

名称: PrimaryInteropAssemblyName

办公价值:、Version=12.0.0.0、Culture=neutral、PublicKeyToken=71e9bce111e9429c

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2991736

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档