2011-01-05 18 views
1

私は新しい2 C#です。私は仕事を与えられました... Outlook 2007からローカルドライブまたは指定された場所に電子メールの添付ファイルをダウンロードするにはC#コードを記述する必要があります。プログラムは、特定のユーザー名とパスワードを指定すると、特定のユーザーのOutlookに接続し、特定のアドレスまたは件名から指定されたファイルをダウンロードするようにする必要があります。 何か助けていただければ幸いです。Outlook 2007から電子メールの添付ファイルをダウンロード

答えて

0

Exchange 2007/2010環境でOutlookを使用していますか?あなたが寒い場合は、EWSを見てください。

+0

私は、Microsoft.exchange.webservicesの参照を追加した後、休暇中のエラーが発生しています。エラー型または名前空間の名前 'ExchangeServiceBinding'が見つかりませんでした(使用するディレクティブまたはアセンブリ参照がありません) –

+0

Visual Serviceで "サービス参照の追加"を使用してWebサービスを追加する必要があります。 – schwindelig

+0

私を助けました...ありがとうございます。 –

0

次のコードを実行してください。それは動作するはずです!

 Microsoft.Office.Interop.Outlook.Application app = null; 
     Microsoft.Office.Interop.Outlook._NameSpace ns = null; 
     Microsoft.Office.Interop.Outlook.PostItem item = null; 
     Microsoft.Office.Interop.Outlook.MAPIFolder inboxFolder = null; 
     //Microsoft.Office.Interop.Outlook.MAPIFolder subFolder = null; 

     try 
     { 
      app = new Microsoft.Office.Interop.Outlook.Application(); 
      ns = app.GetNamespace("MAPI"); 
      ns.Logon(null,null,false, false); 
      inboxFolder = ns.GetDefaultFolder   (Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderInbox); 
      //subFolder = inboxFolder.Folders["MySubFolderName"]; 
      //folder.Folders[1]; also works 
      //Console.WriteLine("Folder Name: {0}, EntryId: {1}", subFolder.Name, subFolder.EntryID); 
      //Console.WriteLine("Num Items: {0}", subFolder.Items.Count.ToString()); 

      for (int i = 1; i <= inboxFolder.Items.Count; i++) 
      { 
       item = (Microsoft.Office.Interop.Outlook.PostItem)inboxFolder.Items[i];     
       foreach (Microsoft.Office.Interop.Outlook.Attachments attachment in item.Attachments) 
       { 
        // Process the "attachment" object as per your requirement! 
       } 

      //Console.WriteLine("Item: {0}", i.ToString()); 
      //Console.WriteLine("Subject: {0}", item.Subject); 
      //Console.WriteLine("Sent: {0} {1}", item.SentOn.ToLongDateString(), item.SentOn.ToLongTimeString()); 
      //Console.WriteLine("Categories: {0}", item.Categories); 
      //Console.WriteLine("Body: {0}", item.Body); 
      //Console.WriteLine("HTMLBody: {0}", item.HTMLBody); 
      } 
     } 
     catch (System.Runtime.InteropServices.COMException ex) 
     { 
      Console.WriteLine(ex.ToString()); 
     } 
     finally 
     { 
      ns = null; 
      app = null; 
      inboxFolder = null; 
     } 
関連する問題