gpt4 book ai didi

c# - 插件无法在 Outlook 2010 32 位上捕获日历事件

转载 作者:太空宇宙 更新时间:2023-11-03 21:24:28 25 4
gpt4 key购买 nike

作为互联网指南,我写了一个示例插件来捕获日历(约会)添加/删除/更改事件,这是我的代码:

    private Outlook.Folder mOutlookFolder = null;
private Outlook.Items mItems = null;

private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
mOutlookFolder = (Outlook.Folder)Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderCalendar);

mItems = mOutlookFolder.Items;
mItems.ItemChange += new Outlook.ItemsEvents_ItemChangeEventHandler(CalendarItems_ItemChange);
mItems.ItemAdd += new Outlook.ItemsEvents_ItemAddEventHandler(CalendarItems_ItemAdd);
mItems.ItemRemove += new Outlook.ItemsEvents_ItemRemoveEventHandler(CalendarItems_ItemRemove);
}

private void CalendarItems_ItemChange(object Item)
{
MessageBox.Show("########## CHANGE");
}
private void CalendarItems_ItemAdd(object Item)
{
MessageBox.Show("########## ADD");
}
private void CalendarItems_ItemRemove()
{
MessageBox.Show("########## REMOVE");
}

它在 Outlook 2013 64 位上运行良好,但当我尝试使用 Outlook 2010 32 位时,事件没有被触发。那么这里发生了什么?

最佳答案

代码应该也适用于 Outlook 2010 x86 或 x64。参见 Running Solutions in Different Versions of Microsoft Office了解更多信息。

加载项很可能已被 Outlook 禁用。查看 LoadBehavior Windows 注册表项或 Outlook 中的 COM 加载项对话框。

Microsoft Office 应用程序可以禁用行为异常的加载项。如果某个应用程序未加载您的加载项,则该应用程序可能已硬禁用或软禁用了您的加载项。

当加载项导致应用程序意外关闭时,可能会发生硬禁用。如果您在加载项中的启动事件处理程序正在执行时停止调试器,它也可能发生在您的开发计算机上。

当加载项产生不会导致应用程序意外关闭的错误时,可能会发生软禁用。例如,如果应用程序在执行启动事件处理程序时抛出未处理的异常,则它可能会软禁用加载项。

当您重新启用软禁用的加载项时,应用程序会立即尝试加载该加载项。如果最初导致应用程序软禁用加载项的问题未得到修复,应用程序将再次软禁用加载项。

参见 How to: Re-enable an Add-in That Has Been Disabled获取更多信息。

关于c# - 插件无法在 Outlook 2010 32 位上捕获日历事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28084983/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com