Frage

Kennt jemand eine Möglichkeit, einen Bulk-Dump jede E-Mail von einem Google Mail-Konto und schreiben Sie die E-Mails in eine Datei ausführen?

Ich suche ein Programm zu schreiben, das lassen würde, um es den Benutzern wieder dort oben gmail (wahrscheinlich über imap) und sichern entweder einzelne Dateien oder als pst (ich weiß, pst wird wahrscheinlich viel härter)

War es hilfreich?

Lösung

vor einiger Zeit schrieb ich eine Blog-Post über genau dasselbe Thema. Siehe HowTo: Download E-Mails von einem Google Mail-Konto in C # .

Code verwendet Rebex Mail-Komponente :

using Rebex.Mail;
using Rebex.Net;
...
// create the POP3 client
Pop3 client = new Pop3();
try
{

   // Connect securely using explicit SSL. 
   // Use the third argument to specify additional SSL parameters. 
   Console.WriteLine("Connecting to the POP3 server...");
   client.Connect("pop.gmail.com", 995, null, Pop3Security.Implicit);

   // login and password
   client.Login(email, password);

   // get the number of messages
   Console.WriteLine("{0} messages found.", client.GetMessageCount());

   // -----------------
   // list messages
   // -----------------

   // list all messages
   ListPop3MessagesFast(client); // unique IDs and size only   
   //ListPop3MessagesFullHeaders(client); // full headers
}
finally
{
   // leave the server alone
   client.Disconnect();      
}


public static void ListPop3MessagesFast(Pop3 client)
{
   Console.WriteLine("Fetching message list...");

   // let's download only what we can get fast
   Pop3MessageCollection messages = 
      client.GetMessageList(Pop3ListFields.Fast);

   // display basic info about each message
   Console.WriteLine("UID | Sequence number | Length");
   foreach (Pop3MessageInfo messageInfo in messages)
   {
      // display header info
      Console.WriteLine
      (
         "{0} | {1} | {2} ",
         messageInfo.UniqueId,
         messageInfo.SequenceNumber,
         messageInfo.Length
      );

      // or download the whole message
      MailMessage mailMessage = client.GetMailMessage(messageInfo.SequenceNumber);
   }   
}

Andere Tipps

Google Mail bietet POP Zugang . So einfach über die Bibliothek , die Sie POP verwenden zu kommunizieren und Sie sind golden.

Edit: Ich habe gerade bemerkt, dass Sie IMAP erwähnt; Ich empfehle Ihnen, POP stattdessen für Bulk-Dumps verwenden. IMAP ist zu geschwätzig für das, was Sie tun möchten.

Wenn Sie IMAP verwenden müssen, ist hier eine Bibliothek für Sie.

Sie können fetchmail aus einer Unix-Umgebung verwenden, um eine Mbox-Datei zu erstellen.

http: //lifehacker.com/software/gmail/geek-to-live--back-up-gmail-with-fetchmail-235207.php

Es ist ein Open-Source-Python-Programm auf Windows (mit py2exe) kompiliert bei https://github.com/jay0lee/got-your-back/wiki

Aber Mac-Anwender wäre es kompilieren müssen (was ich nicht vollständig aufgrund eines py2exe Fehler herausgefunden).

So oder so, müssen Sie auch eine Möglichkeit, das Programm automatisch in einem Zeitplan auszuführen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top