问题标签 [office-addins]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 开发 Office 插件 - 无法初始化应用程序。错误 42
我已经开发了 Office 插件 (COM),我使用 WIX 来部署插件并且它可以正常工作,然后客户要求集成第三方库(用于许可证),以启用添加许可证功能。
集成许可证库(几个 dll)并安装它以进行测试后。
安装工作正常,但是当打开 word 或 excel 以使用加载项时,它适用于某些机器(它们是作为管理员的单用户)但与其他机器(合作或拥有多用户)我得到错误并且许可证代码未执行(它没有显示插入序列号的弹出窗口)。
所以程序什么也没有显示,好像用户拒绝插入序列号或使用试用版(在这种情况下,我显示对话框“许可证无效”并且不将我的用户控件加载到任务窗格)。这就是我得到的错误:
我发现一些文章建议将 DLLS 放在系统文件夹中(System32 用于 32 位)和 SystemWow64 用于 64 位。但随后加载项无法加载 DLLS,这并没有解决问题。
那么这个问题的原因可能是什么?安全问题或加载所需 dll 时出错?
编辑
用于授权的第三方库由softwarekey Instant PLUS制作
c# - 如何使用C#将表格移动到word文档的下一页
我有一个单词模板。它有两个由 xml 节点组成的表。在少数情况下,我必须将第二个表格移动到同一个 word 文档的第二页。有谁知道如何将表格移动到下一页。
我只知道移动行....
但我不知道如何将表格移动到同一文档中的下一页.....
windows-server-2012 - 在 Win Server 2012 上部署 Office 2013 插件
我有一个 Excel 2013 加载项。
如果用户没有首先通过正常的 RDP 连接登录,我无法弄清楚为什么它不会通过远程桌面网关加载。
查看服务器上的注册表时,似乎办公室缺少一些曾经存在的条目,例如:CURRENT_USER\Software\Microsoft\Office\Excel\Addins\
我只有 CURRENT_USER\Software\Microsoft\Office\15.0\Excel\
c# - PowerPoint - 设置状态栏文本
我正在为 MS Word/Excel/Powerpoint 2010 创建 VSTO 插件。在 Word 和 Excel 的对象模型中,有一个Application.StatusBar
公开的属性,我可以像这样更改状态栏的文本:
但是,PowerPoint 的对象模型中没有这样的属性。我也找不到类似的东西。 如何更改 PowerPoint 中的状态栏文本?
编辑:我的目标是在插件开始做它的事情时给用户一些反馈。也欢迎替代解决方案!
vsto - 以编程方式从功能区获取功能区控件
我正在开发 vsto,我想在功能区上隐藏一些控件特别是我需要隐藏菜单 - 在主页选项卡中的样式组上更改样式。我试图通过xml做到这一点:
但菜单仍然可见,看起来我无法获得此控件。我的问题是任何人都可以得到这个控制?通过xml还是通过代码?顺便说一句,以编程方式获取功能区控件的方法是什么。我知道有 RibbonGroup 类,但我不知道如何加载它(如何通过 id 获取它)如果我能做到,我会得到属于它的所有项目。有任何想法吗?
c# - 从 Outlook 电子邮件号码呼叫
我有一个软电话。现在,我想创建一个 Outlook 插件,使用户能够直接从 Outlook 电子邮件中的号码拨打电话。那可能吗?我可以使用 Office Apps 或 Addin 完成此操作吗?
c# - Microsoft COM 加载项的多线程问题
我正在为 Microsoft Office 产品创建加载项,只想在后台执行耗时的任务。在我的情况下,Office 程序有更多的内容,加载项需要更多的时间来完成它的工作。因此,我需要在用户执行其他任务时在后台执行此类作业,或者向用户显示进度条,以显示加载项在主线程中工作时完成其工作的时间。我发现 Microsoft Office 对象模型不是线程安全的,并且不是从 COM 加载项的主线程访问对象、属性或方法会产生异常,并且不建议使用与 COM 组件交互的线程。但我不想让用户等待加载项正在完成其工作而不知道卡住的屏幕后面发生了什么。有什么方法可以在 COM 插件中使用多线程。
编辑:我试过 backgroundWorker。但它会导致这样的异常:
c# - 遍历 PropertyAccesor
我们编写了一个 Outlook 插件,它通过 PropertyAccessor 在邮件项上设置了几个自定义属性。像这样:
此邮件(eml 文件)被发送到另一个程序,该程序需要读取属性并根据这些属性采取行动。问题是我们并不确切知道要设置哪些属性。我们如何遍历 PropertyAccessor 中的自定义属性?
与此同时,我们正在使用 UserProperties 来遍历属性,但 UserProperties 有一个缺点,当打印电子邮件时,它们会打印在邮件消息上方。
c# - Getting System.Runtime.InteropServices.COMException on trying to register word addin
We have a word based application. We create a Word Addin & when trying to connect the addin using the statements :
Just as the code hits the line MyAddin.Connect = true;
it throws the below exception:-
A first chance exception of type 'System.Runtime.InteropServices.COMException' occurred in MyWordApp.exe Additional information: Error in the DLL (Exception from HRESULT: 0x800401F9 (CO_E_ERRORINDLL)) & the Word application quits after this.
I googled to find some resolution to this but to no help. Can anyone help me on this to avoid the exception.
Thanks/Saurav.
c# - 如何验证办公室窗口中的鼠标左键单击?(Microsoft.Office.Interop.Word.Application)
我想要一个像下面这样的条件。当用户点击鼠标左键时,超链接应该被触发。我将此条件写为 OfficeWindow.IsLeftClicked==MouseButtons.Left 但它不起作用。