问题标签 [outlook-addin]

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.

0 投票
2 回答
5055 浏览

c# - Outlook AddOn 如何获取选定的电子邮件?

我正在制作一个 Outlook 插件,并试图找到一种方法来查看选择了哪些电子邮件,然后能够通过 foreach(或其他)与它们一起工作。如果这是不可能的,有没有办法获取文件夹中的所有项目并轻松访问该信息?之后,我需要将这些项目移动到另一个文件夹。

我该怎么做呢?

0 投票
1 回答
721 浏览

multithreading - 如何有效地在 Outlook 2007 加载项中运行后台任务?

我希望有人可以为我指出正确的方向,即如何在 Outlook 2007 中运行后台任务,同时保持良好的用户体验。我有一个循环遍历默认 Outlook 日历中的每个项目并将信息(主题、位置等)发送到后端服务器的过程。我已经尝试过 ThreadPool.QueueUserWorkItem 并创建一个线程并将它的 isBackground 设置为 true,但是在此任务运行时 Outlook 中正常操作的用户体验似乎受到了影响。理想情况下,我希望此后台任务能够运行并且 Outlook 不会显得迟缓。关于如何实现这一目标的任何想法?

谢谢

0 投票
1 回答
421 浏览

outlook-addin - 从 Outlook COM 加载项手动触发 Windows 错误报告

我正在使用 Visual Studio 2008 和 VSTO 编写 Outlook COM 插件。如果加载项中未处理异常,我希望它触发 Windows 错误报告 (WER)。我们公司可以访问 WinQual,以便我们可以从我们程序中出现的用户那里获得 WER 报告的报告。有没有办法做到这一点?

据我所知,这是不可能的,但想检查一下是否有办法。WER 仅在应用程序生成未处理的异常时触发。在 Outlook 和 Outlook 中运行的 Outlook 加载项具有围绕对 COM 加载项的调用的异常处理程序,以防止 COM 加载项导致 Outlook 崩溃。由于 Outlook 不会崩溃,因此不会触发 WER。

0 投票
1 回答
377 浏览

outlook - Outlook 2003 窗体区域

我正在为约会项目创建 Outlook 2007 加载项的 Outlook 2003 版本。是否可以在 Outlook 2003 中为约会项目创建表单区域?如果没有,是否有解决方法来实现相同级别的功能?

谢谢

0 投票
1 回答
717 浏览

c# - 优化 Outlook 加载项

我的 Outlook 2007 插件运行良好,直到我不得不移动大量邮件。邮件列表是这样获取的

我将 xMail 设置为 mailItem 的原因是因为我不能使用 mailItem 作为参考,它是只读的。该程序的其余部分现在运行良好,我只是想弄清楚如何更快地移动这些项目。我必须先调用保存吗?或者这只是一个额外的电话?

0 投票
1 回答
258 浏览

dll - 在不打包的情况下使用 Microsoft office dll

有没有一种方法可以在不打包引用的 dll 文件的情况下创建和安装 Microsoft Office 插件。假设Microsoft Office安装在可以安装插件的目标PC上,如何在插件中使用C#代码引用Office dll。

0 投票
1 回答
1332 浏览

c# - 在 Outlook 加载项中处理数字 ID/签名

我有一个 C# Outlook 加载项应用程序(VS2005 和 2003 Outlook),它读取传入的电子邮件并删除附件和电子邮件文本正文以供将来处理。有时我会收到一封包含数字签名的电子邮件。当我尝试访问 mailitem.body 属性时,应用程序将失败,并引发以下异常:

System.Runtime.InteropServices.COMException (0xAB404001):操作失败。在 Microsoft.Office.Interop.Outlook._MailItem.get_Body() 在 MyLib.MyApp.OutlookAddin.MailProcessor.ProcessMailItem(MailItem mailItem)

我很确定是数字签名导致了问题,因为如果我将电子邮件转发给我自己,它将剥离原始发件人的数字签名,并且加载项应用程序将毫无问题地处理电子邮件。我不知道该怎么办。我需要处理这封电子邮件,所以我不能忽略它。以某种方式获取原始电子邮件的正文而不抛出异常将是理想的。或者我想如果我可以识别出与电子邮件关联的数字签名,我可以将电子邮件转发给自己,但这似乎有点混乱。有没有人有任何建议/修复?谢谢你的帮助。

0 投票
1 回答
881 浏览

c# - 如何在 Outlook 中将菜单项添加到文件类型中

我正在尝试为我们的 CRM 应用程序创建一个VCF 文件的导出方法。

我正在运行新的 VS 2010,但将项目定位为 .NET 3.5

连接到这个上下文菜单的技术是什么?

替代文字 http://www.balexandre.com/temp/2010-04-14_1523.png

我对 AddIns 很陌生,但逻辑思路是创建一个 Outlook AddIn,但我很遗憾地未能将菜单项添加到此上下文菜单:(

感谢您对此的任何帮助

0 投票
2 回答
1026 浏览

c# - 通过交易所同步发布 VSTO Outlook 数据

我为outlook写了一个插件,当我点击按钮时它会弹出约会的LastModificationTime

像这样的按钮事件处理程序

问题是我手机改了约会,然后通过exchange服务器同步到outlook

产生问题的步骤:

  1. 单击按钮,获取 LastModificationTime 为“time1”

  2. 在我的手机中将开始日期更改为“start1”,通过 Exchange 服务器同步到 Outlook

  3. 单击按钮,获取 LastModificationTime,仍然是“time1”

  4. 在 Outlook 中将开始日期更改为“start2”,但约会仍处于“start1”日期。

  5. 重启展望

  6. 单击按钮,获取新的 LastModificationTime 作为“time2”,约会在“start1”日期,“start2”消失了。

没有问题的步骤

  1. 单击按钮,获取 LastModificationTime 为“time1”

1.1。重启展望

  1. 在我的手机中将开始日期更改为“start1”,通过 Exchange 服务器同步到 Outlook

  2. 点击按钮,获取 LastModificationTime, "time2"

如果约会是通过交换服务器更改的,那么 List Appts 似乎永远不会刷新到最新值。

这个问题有什么解决办法吗?或其他原因使其发生?

0 投票
1 回答
276 浏览

c# - Outlook 2007 Add In 中的 Fire 事件,由外部应用程序获取

我有一个 Outlook 插件,它对 Outlook 邮箱进行一些处理。在处理电子邮件时,它会触发MailProcessed事件,如果无法处理电子邮件,则会触发MailProcessFail事件。

现在我有一个正在运行的外部服务。它每 60 秒调用一次加载项以开始处理电子邮件。它需要监听从 Add In 触发的自定义事件,然后采取行动。

现在我尝试用一​​个简单的 c# Event来实现它,但是当它到达以下代码时

它抛出以下异常。ArgumentException:值不在预期范围内。

有没有人设法从 Outlook 插件中抛出自定义事件并从外部服务中收听?