2017-09-08 5 views
0

以下は、メールを受信トレイから別のフォルダに移動するためのコードです。Outlookメールが別のフォルダに物理的に移動しない場合があります

Microsoft.Office.Interop.Outlook.MAPIFolder inboxFolder = null; 
inboxFolder = ns.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderInbox); 
Microsoft.Office.Interop.Outlook.MAPIFolder destFolder = inboxFolder.Folders[somefoldername]; 
int countofmails = inboxFolder.Items.Count;   
for (int j = countofmails; j > 0; j--) 
{ 
Object _obj=inboxFolder.Items[j]; 
if (_obj is MailItem) 
    { 
    MailItem mi = (MailItem)_obj;      
    if (mi != null) 
    { 
    mi.SaveAs(somepath,OlSaveAsType.olMSG); 
    mi.Move(destFolder); 
    System.Runtime.InteropServices.Marshal.FinalReleaseComObject(mi); 
    } 
    } 
} 

このコードは正常に動作しますが、一度ブルームーンでは、コードが正常に実行されている場合でも、メールアイテムは、まだ受信フォルダに見られます。

+0

このコードをトリガーするイベントは何ですか? –

+0

あなたはそのコードを実行している間に新しいメッセージが到着する可能性はありますか? –

+0

@stuart Thomson-それは10分ごとに繰り返される予定表に置かれます。 –

答えて

関連する問題