Vba 在执行外接程序之前成功打开Outlook
我构建了一个VSTO Outlook加载项(使用Visual Studio)将电子邮件从一个文件夹复制到另一个文件夹,然后匹配一些条件 我将代码放在Vba 在执行外接程序之前成功打开Outlook,vba,vb.net,outlook,vsto,outlook-addin,Vba,Vb.net,Outlook,Vsto,Outlook Addin,我构建了一个VSTO Outlook加载项(使用Visual Studio)将电子邮件从一个文件夹复制到另一个文件夹,然后匹配一些条件 我将代码放在Sub ThisAddIn\u Startup()下,它从Outlook启动开始运行。这会造成在执行此加载项功能之前完全打开Outlook应用程序的延迟。处理启动屏幕以打开Outlook主窗口需要更长的时间 是否有任何方法可以延迟外接程序功能的执行,以便先成功打开outlook并开始同步电子邮件,然后在特定时间(例如5分钟)后执行外接程序 我尝试了“
Sub ThisAddIn\u Startup()
下,它从Outlook启动开始运行。这会造成在执行此加载项功能之前完全打开Outlook应用程序的延迟。处理启动屏幕以打开Outlook主窗口需要更长的时间
是否有任何方法可以延迟外接程序功能的执行,以便先成功打开outlook并开始同步电子邮件,然后在特定时间(例如5分钟)后执行外接程序
我尝试了“Threading.Thread.Sleep()”,但它冻结了整个过程,并为打开Outlook应用程序增加了额外的延迟时间
Public Class ThisAddIn
'Threading.Thread.Sleep(60000)
Public Sub ThisAddIn_Startup() Handles Me.Startup
Call CopyMails()
End Sub
Private Sub ThisAddIn_Shutdown() Handles Me.Shutdown
End Sub
Public Sub CopyMails()
'Some codes here
End Sub
End Sub
我不确定Outlook API是否有更好的方法来实现您的目标,但可以通过以下方式实现5分钟的延迟:
Public Async Sub ThisAddIn_Startup() Handles Me.Startup
Await Task.Delay(300000)
CopyMails()
End Sub
非常感谢,你的回答很好地达到了我的目的。