您可以嘗試使用SendKeys
併發送F9執行發送/接收操作的熱鍵。我可能只是自己做這個按鍵,但你可以編程附加到Explorer.Activate
事件並生成這個事件。您還可以添加去抖動來控制頻率,以免壓倒Exchange服務器。
DateTime lastRun = DateTime.Now; // debouce control
void ThisAddIn_Startup(object sender, System.EventArgs e)
{
Application.Explorers.NewExplorer += new Outlook.ExplorersEvents_NewExplorerEventHandler(explorers_NewExplorer);
}
void explorers_NewExplorer(Outlook.Explorer explorer)
{
((Outlook.ExplorerEvents_10_Event)explorer).Activate += new Outlook.ExplorerEvents_10_ActivateEventHandler(ExplorerWrapper_Activate);
}
void ExplorerWrapper_Activate()
{
if ((DateTime.Now - lastRun).TotalMilliseconds > 500) // trigger limit 500ms
{
lastRun = DateTime.Now;
System.Windows.Forms.SendKeys.Send("{F9}"); // hotkey to send/receive
}
}
@SilverNinja很酷,但我不想以編程方式做任何事情,我只是想知道這樣的功能是否已經在Outlook中實現。謝謝 – Adi
如果你不是在尋找一個程序化的解決方案,那麼這個問題就是無關緊要的。堆棧溢出是爲了*編程*問題。 – Charles
StackOverflow是我的朋友,所以這是我的第一選擇... – Adi