Dobrý den, měl bych dotaz k práci s emaily skrze addin outlooku. Snažím se nahradit chybějící funkcionalitu (zatím jen kategorie) Outlooku při použití IMAP serveru. Grafická nabídka kategorií v outlooku (IMAP) chybí, ale různými obezličkami jako přiřazování kategorií přes klávesové zkratky funguje. Proto bych si rád vytvořil nějaký jednoduchý doplněk do outlooku, který by grafiku doplnil. Nejsem moc seznámen s chováním Interop outlooku.
//nastavovaná kategorie
var mailCat = string.Empty;
//přáznak vybrané kategorie
var catSetted = false;
//Procházení výběru
foreach (var sel in Application.ActiveExplorer().Selection)
{
if (sel is MailItem)
{
try
{
//upravovaný mail
var mail = sel as MailItem;
if (!catSetted)
{
mail.ShowCategoriesDialog();
mailCat = mail.Categories;
catSetted = true;
}
else
mail.Categories = mailCat;
mail.Save();
}
catch
{}
}
}
Napoprvé to přidělí kategorii správně. Když outlook vypnu a znovu pustím tak kategorie zůstane jak má. Problém je pokud se u stejného emailu pokusím kategorii změnit dvakrát při jedné instanci outlooku. Při druhém pokusu u volání ShowCategoriesDialog() dostanu chybu: System.Runtime.InteropServices.COMException Operaci nelze provést, protože zpráva byla změněna. Nevěděl by někdo kde je chyba? Případně jak zprávu znovu načíst nebo updatovat ? Děkuji
|