Ich habe ein Problem mit dem Speichern MailItem in Outlook Addin, nachdem ich einige Eigenschaften zu ändern oder ergänzen. Code löst Fehler aus: "Die Operation kann nicht ausgeführt werden, da die Nachricht geändert wurde". Die Idee des Add-Ins ist: Klicken Sie mit der rechten Maustaste auf Mail, klicken Sie auf die neue Option "An System senden", dann wird die E-Mail gesendet und das Symbol wird als eine Markierung erhalten, dass es erfolgreich gesendet wurde. Hier ist mein Code:MailItem.Save() Fehler „Der Vorgang kann nicht ausgeführt werden, da die Nachricht geändert wurde“
mail.UserProperties.Add("exportedToCompany", OlUserPropertyType.olText, true, OlFormatText.olFormatTextText);
mail.UserProperties["exportedToCompany"].Value = "exported";
try
{
try
{
mail.PropertyAccessor.SetProperty("http://schemas.microsoft.com/mapi/id/{00062008-0000-0000-C000-000000000046}/8582000B", false);
mail.MessageClass = "IPM.Note.ExportedMail";
mail.Save(); //throws error
}
catch (System.Exception ex) { logger.Error(ex.Message); logger.Error(ex.StackTrace); }
DeleteUselessMsg(mail);
}
catch (System.Exception ex)
{
Debug.WriteLine(ex.StackTrace);
logger.Error(ex.Message);
logger.Error(ex.StackTrace);
}
SendMail(GetNextMail());
Während debug, kann ich nicht wirklich Situation simulieren, wenn es passiert, ich habe gerade Datei vom Client anmelden, wo dieser Fehler viel passiert. Ich wundere mich, warum ist so zufällig, dass ich diesen Fehler überhaupt nicht bekomme und Client bekommen es viel, aber nicht jedes Mal. Eine meiner Ideen war, dass IMAP irgendwie Mails aktualisiert, bevor ich sie speichere - ist das überhaupt möglich? Andere Sache nach dem Code mit Fehler ausgeführt: Outlook fragt nach dem Versuch, nicht gespeicherte Elemente zu speichern, Programm zu schließen, und vermutlich Programm erstellt Kopien von E-Mails im Entwurf-Ordner (aber ich bin mir nicht sicher, ob es mit meinem Problem verbunden ist). Kann ich das MailItem irgendwie erzwingen? mit Outlook 2013
Mail-Variable stammt aus Explorer.Selection od-Typ MailItem – user3762819
Wie Sie sagten, Problem auftritt, wenn Nachricht zwischen Öffnen und Speichern Aktion geändert wird, aber ich jedes Mal ändern, wenn ich z. B. UserProperties hinzufügen, sollte es nicht jeden Fehler löst Zeit dann? – user3762819
Nein, der zugrunde liegende MAPI-Anbieter sieht nur einen Konflikt, wenn die Nachricht gespeichert wird. Es ist völlig in Ordnung, eine Nachricht zu ändern, aber niemals zu speichern. –