我的Outlook插件(VSTO)如何检测Outlook何时完全加载?

时间:2016-09-21 18:01:31

标签: outlook vsto outlook-addin

感谢您的光临。

我正在开发一个Outlook插件,需要提示用户在加载Outlook时登录。我目前正在通过挂钩Startup ThisAddIn事件来完成此任务。

问题

不幸的是,登录对话框在Outlook完全加载之前显示,因此用户看起来好像Outlook没有加载,并且他们被迫登录插件。

问题

是否有可以从我的插件代码中订阅的事件只会在 Outlook已完全加载并且正在向用户显示之后触发

相关链接

Ready event in Microsoft Outlook 2010?(关于通过StartupComplete使用IDTExtensibility2事件的答案看起来很有希望,但我不确定如何实施它。任何建议都值得赞赏。)

我试过了。 。

我尝试过以下操作,但这会导致对话框过早启动:

private void InternalStartup()
        {
            this.Startup += new System.EventHandler(ThisAddIn_Startup);
            this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
        }

private void ThisAddIn_Startup(object sender, System.EventArgs e)
        {
            //Fire 3rd party code to launch log-in dialog here
        }

1 个答案:

答案 0 :(得分:1)

检查是否Application.Explorers.Count > 0。如果是,请继续。否则,订阅Explorers.NewExplorer事件并在显示资源管理器时在该事件处理程序中运行代码。