Kap*_*pil 5 c# vsto outlook-2007 outlook-addin outlook-2010
我正在使用C#VSTO 3.0 Outlook加载项,我需要捕获Print事件(当用户从Outlook中选择打印选项以打印电子邮件时).我在Outlook对象模型中找不到任何提供此事件访问权限的API.有没有办法实现这个目标?
如果你想在后台视图中拦截打印命令可以看看下面的文章:
"不可能从自定义 UI XML 标记或使用对象模型覆盖这些命令。使用 DocumentBeforeSave 事件是一种替代方法,但使用该事件并不会真正改变 Change 中显示的各个命令的功能后台的文件类型库。更好的解决方案是考虑隐藏内置 UI 并使用自定义命令完全重建它。 ”
(上面是关于文件 -> 另存为..但文件 -> 打印的情况几乎相同)。
所以基本上你需要添加你自己的命令而不是内置的命令。如果你不是在谈论后台,而是在一些旧的 Outlook 中,其中打印命令位于菜单项/功能区/命令栏中,你也可以看看这篇文章AddIn Express(我认为没有他们的产品也能工作):
想法是相同的 - 您找到感兴趣的按钮/菜单项的 Id 或 IdMso,并创建新的 Id 或 IdMso 以便访问事件。
希望这可以帮助。