Tag: office pia

MS OFFICE C#:主要互操作程序集

任何人都知道如何安装MS Office主互操作程序集而无需安装办公室本身?

PIA安装但仍然收到互操作错误

我正在尝试使用Microsoft.Office.Interop.xxxxxxx命名空间,但Visual Studio 2010不提供“interop”选项。 我已经为office12和office14安装了PIA,我已将它们包含在解决方案资源管理器的“参考”中,但它无法正常工作。 我试图调用命名空间的代码是: using Excel = Microsoft.Office…; 在“办公室”之后,我只能选择“核心”。 所以它看起来像这样 using Excel = Microsoft.Office.Core; 这匹配导入的引用…但使用此命名空间似乎没有用。 我的问题是如何让Microsoft.Office.Interop选项被接受并在intellisense中显示? 例: using Excel = Microsoft.Office.Interop.Excel; 收到“Interop”的错误消息=“名称空间’Microsoft.Office’中不存在类型或命名空间名称’Interop’(您是否缺少程序集引用?) 我在解决方案资源管理器中加载的程序集是“Microsoft Office 14.0对象库”TypeLib版本2.5。 程序集路径=“C:\ Program Files \ Common Files \ Microsoft Shared \ OFFICE14 \ MSO.DLL 谢谢你的任何建议!

如何使用Microsoft.Office.Interop打开文件时禁用弹出窗口

如只读确认,其他警报。 这些弹出窗口怎么办? 还是忽略它们?

在C#中使用COM互操作时的RCW和引用计数

我有一个使用Office互操作程序集的应用程序。 我知道运行时管理的“运行时可调用包装器(RCW)”。 但我不太确定引用计数如何增加。 MSDN说, RCW只保留对包装的COM对象的一个​​引用,而不管调用它的受管客户端的数量。 如果我理解正确,在以下示例中, using Microsoft.Office.Interop.Word; static void Foo(Application wrd) { /* …. */ } static void Main(string[] args) { var wrd = new Application(); Foo(wrd); /* …. */ } 我将实例wrd传递给另一个方法。 但这不会增加内部引用计数。 所以我想知道引用计数增加的场景是什么? 任何人都可以指出引用计数增加的情况吗? 另外我读了一些博客,说在使用COM对象编程时避免使用双点。 像wrd.ActiveDocument.ActiveWindow这样的东西。 作者声称编译器创建单独的变量来保存将增加引用计数器的值。 恕我直言,这是错误的,第一个例子certificate了这一点。 那是对的吗? 任何帮助都会很棒!