lỗi 0x80040109 khi mô hình đối tượng Outlook được dùng với tài khoản IMAP trong Outlook 2013

Triệu chứng

Khi bạn sử dụng mô hình đối tượng Outlook để thêm một đối tượng thuộc tính uservào thông điệp email cho một tài khoản IMAP trong Outlook 2013, bạn nhận được thông báo lỗi sau đây:

Chạy lỗi thời gian '-2147221239 (80040109) ': thao tác không thể thực hiện được vì thư đã bị thay đổi.

Lưu ý́

  • Sự cố này chỉ xảy ra khi bạn chạy mã trong kế nhanh để thêm một đối tượng thuộc tính uservào cùng một thư email lần thứ hai.

  • Sự cố này không xảy ra khi ngăn xem trước bị tắt hoặc nếu bạn chuyển đổi giữa các thư email trước khi bạn chạy mã lần thứ hai.

Cách giải quyết

Để làm việc xung quanh vấn đề này, hãy đóng tất cả các mục sau khi bạn chạy mã để thêm đối tượng Userproperty vào thư email. Hoặc, hãy chạy mã chỉ một lần cho cùng một email.

Sự cố này xảy ra vì việc chỉnh sửa và lưu thư email nhiều lần cho một tài khoản IMAP không hiệu quả. Khi đã lưu email, nó phải được tải lên máy chủ dưới dạng thư email hoàn toàn mới và thư email gốc bị xóa. Nếu ngăn xem trước được kích hoạt, thông điệp email gốc vẫn nằm trong bộ nhớ, trong khi thư email cơ sở được thay đổi vì nhiều phần tải lên. Để tái tạo vấn đề này, hãy làm theo các bước sau đây:

  1. Chọn một thư email trong danh sách thư.

  2. Hãy đảm bảo rằng ngăn xem trước đã được bật.

  3. Chạy mã sau đây cho cùng một thư email hai lần trong kế tiếp nhanh:

    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

Lưu ý:Microsoft cung cấp các ví dụ về lập trình chỉ cho minh họa, mà không có bảo hành nào được thể hiện hoặc ngụ ý. Điều này bao gồm nhưng không giới hạn, các bảo đảm ngụ ý về khả năng bán hoặc thể dục cho mục đích cụ thể. Bài viết này giả định rằng bạn đã quen thuộc với ngôn ngữ lập trình được thể hiện và các công cụ được sử dụng để tạo và thủ tục gỡ lỗi. Kỹ sư hỗ trợ của Microsoft có thể giúp giải thích về các chức năng của một thủ tục cụ thể. Tuy nhiên, họ sẽ không sửa đổi các ví dụ này để cung cấp thêm các chức năng hoặc thủ tục dựng thêm để đáp ứng các yêu cầu cụ thể của bạn. 

Bạn cần thêm trợ giúp?

Phát triển các kỹ năng của bạn
Khám phá nội dung đào tạo
Sở hữu tính năng mới đầu tiên
Tham gia Microsoft dùng nội bộ

Thông tin này có hữu ích không?

Cảm ơn phản hồi của bạn!

Cảm ơn bạn đã phản hồi! Để trợ giúp tốt hơn, có lẽ chúng tôi sẽ kết nối bạn với một trong những nhân viên hỗ trợ Office của chúng tôi.

×