gpt4 book ai didi

outlook-addin - Outlook 2007加载项异常处理

转载 作者:行者123 更新时间:2023-12-04 04:39:31 29 4
gpt4 key购买 nike

我有一个我最近继承的Outlook 2007加载项,目前在生产中存在一个问题,有些用户正在周期性地,似乎是随机地禁用其加载项。外接程序中没有日志,并且在外接程序代码中的每个方法/事件调用周围都存在try/catch(和eat)块。我进行了一些谷歌搜索,发现如果Outlook中抛出未处理的异常,则Outlook会执行此“软禁用”加载项。

据我所知,外接程序没有抛出任何异常。我想做的是:1)在插件中创建某种全局异常处理程序,以确保100%确保捕获了所有异常。或2)以某种方式监听Outlook,从而“禁用”注册表中的加载项,并让此监听器删除Outlook所设置的reg键。

我已尝试通过以下方法执行第一项操作:

AppDomain.CurrentDomain.UnhandledException += AppDomain_UnhandledException;
System.Windows.Forms.Application.ThreadException += Application_ThreadException;

但都没有成功。

我意识到System.Windows.Forms.Application.ThreadException不一定适用于Outlook加载项,但我知道为什么不尝试它。

另外,我已经读到Outlook为外接程序启动了一个单独的AppDomain,所以我希望AppDomain.CurrentDomain可以为此工作。我编写了一些代码,这些代码有意引发异常以进行测试,并且无法进入这些事件中的任何一个,并且Outlook继续禁用该加载项。

任何帮助/见解将不胜感激。

最佳答案

当Outlook加载项被禁用时,它将加载行为从3更改为2。您可以从注册表中检查此加载行为,以识别加载项是否被禁用。

关于outlook-addin - Outlook 2007加载项异常处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2791819/

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