我正在开发一个 C# VSTO 3.0 Outlook 插件,我需要在其中捕获打印事件(当用户从 Outlook 中选择打印选项来打印电子邮件时)。我在 Outlook 对象模型中找不到任何提供对此事件的访问权限的 API。有没有办法做到这一点?
问问题
1706 次
1 回答
1
如果想在后台视图拦截打印命令可以看下面的文章:
"无法从自定义 UI XML 标记或使用对象模型覆盖这些命令。使用 DocumentBeforeSave 事件是一种替代方法,但使用它并不会真正改变显示在 Change 中的各个命令的功能后台中的文件类型库。更好的解决方案是考虑隐藏内置 UI 并使用自定义命令完全重建它。 “
(以上是关于文件 -> 另存为.. 但文件 -> 打印的情况几乎相同)。
所以基本上你需要添加你自己的命令而不是内置的。如果你不是在谈论后台,而是在菜单项/功能区/命令栏中打印命令的一些较旧的 Outlook,你也可以看看这篇文章AddIn Express(我认为没有他们的产品也可以):
那里的想法是相同的 - 您找到感兴趣的按钮/菜单项的 Id 或 IdMso 并创建新的以获取事件。
希望这可以帮助。
于 2012-05-24T05:38:07.313 回答