0

Outlook (2013) がアクティブ化されたときに電子メールを自動的に送受信するように設定する方法はありますか? 今できることは、定期的にメールをチェックするよう Outlook に指示することです。もちろん、開始時にメールをチェックします。私はファンですが、ほとんどの場合、Outlook は最小化されて実行されます。復元したら (つまり、Outlook を前面に持ってくると)、Send/Receive Folders を押すのと同じように、自動同期を実行したいと思います。これは重大な問題ではなく、近い問題ではないことに同意しますが、私にとっては理にかなっています。

4

1 に答える 1

2

送受信アクションを実行するホットキーを使用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
    }
 }
于 2013-01-25T21:31:11.533 に答える