eroare 0x80040109 atunci când modelul de obiect Outlook este utilizat cu un cont IMAP în Outlook 2013

Simptome

Atunci când utilizați modelul de obiect Outlook pentru a adăuga un obiect UserProperty la un mesaj de E-mail pentru un cont IMAP în Outlook 2013, primiți următorul mesaj de eroare:

Eroare de timp de rulare '-2147221239 (80040109) ': operațiunea nu se poate efectua, deoarece mesajul a fost modificat.

Note

  • Această problemă apare doar atunci când rulează codul în succesiune rapidă pentru a adăuga un obiect UserProperty la același mesaj de e-mail a doua oară.

  • Această problemă nu se produce atunci când panoul de examinare este dezactivat sau dacă comutați între mesajele de e-mail înainte de a executa codul pentru a doua oară.

Soluție de evitare

Pentru a rezolva această problemă, închideți toate elementele după ce ați rulat codul pentru a adăuga un obiect UserProperty la un mesaj de e-mail. Sau, rulează codul o singură dată pentru același mesaj de e-mail.

Această problemă apare deoarece editarea și salvarea unui mesaj de e-mail de mai multe ori pentru un cont IMAP este ineficient. Atunci când se salvează un mesaj de e-mail, acesta trebuie să fie încărcat pe server ca mesaj de e-mail complet nou, iar mesajul de e-mail inițial este șters. Dacă panoul de previzualizare este activat, mesajul de e-mail inițial rămâne în memorie, în timp ce mesajul de e-mail subiacent este modificat din cauza încărcărilor multiple. Pentru a reproduce această problemă, urmați acești pași:

  1. Selectați un mesaj de e-mail în lista de mesaje.

  2. Asigurați-vă că este activat panoul Previzualizare.

  3. Rulează următorul cod pentru același mesaj de e-mail de două ori în succesiune rapidă:

    Function ReproCode()Dim oExp As Outlook.ExplorerDim oSel As Outlook.SelectionDim oMail As Outlook.MailItemDim oProp As UserPropertyDim oProps As UserProperties   Set oExp = Application.ActiveExplorerSet oSel = oExp.Selection   For iCount = 1 To oSel.CountIf oSel.Item(iCount).Class = OlObjectClass.olMail ThenSet oMail = oSel.Item(iCount)Set oProps = oMail.UserPropertiesSet oProp = oProps.Add("TextProp", olText, False, 1)oProp.Value = "Sample Text"oMail.SaveEnd IfNext iCountSet oExp = NothingSet oSel = NothingSet oMail = NothingSet oProp = NothingSet oProps = Nothing   End Function

Notă:Microsoft furnizează exemple de programare doar pentru ilustrație, fără garanție explicită sau implicită. Acestea includ, dar nu se limitează la garanþiile implicite de vandabilitate sau adecvare la un anumit scop. Acest articol presupune că sunteți familiarizat cu limbajul de programare care este în curs de demonstrare și cu instrumentele utilizate pentru a crea și a depana proceduri. Inginerii de asistență Microsoft vă pot ajuta să explicați funcționalitatea unei anumite proceduri. Cu toate acestea, aceștia nu vor modifica aceste exemple pentru a oferi funcționalități suplimentare sau pentru a construi proceduri pentru a îndeplini cerințele specifice. 

Aveți nevoie de ajutor suplimentar?

Extindeți-vă competențele
Explorați instruirea
Fiți primul care obține noile caracteristici
Alăturați-vă la Microsoft Insider

V-a fost de ajutor această informație?

Cât de mulțumit sunteți de calitatea traducerii?

Ce v-a afectat experiența?

Aveți feedback suplimentar? (Opțional)

Vă mulțumim pentru feedback!

×