Outlook) (MailItem.BeforeRead 事件
會在 Microsoft Outlook 開始讀取專案的屬性之前發生。
語法
expression。 BeforeRead
表達 代表 MailItem 物件的 變數。
註解
BeforeRead 事件會在 Read 事件之前發生。 有別於其他以 Before 為字首的事件,此事件不可取消。 若要判斷何時從記憶體卸載專案,請使用 Unload 事件。
BeforeRead 事件對應於 Exchange 用戶端擴充功能 (ECE) 中的 IExchExtMessageEvents::OnRead 事件。
只有項目物件的下列成員可以在 BeforeRead 事件中存取:
MAPIOBJECT
MAPIOBJECT 屬性是 Outlook 物件模型中的隱藏屬性。 這個屬性可讓您存取基礎 MAPI IMessage 物件,而且只能透過 IUnknown 介面叫用。 以 C 或 C++ 等支援 IUnknown 的語言撰寫的程式都可存取此屬性。 MAPIOBJECT 無法透過 IDispatch 介面使用。 Visual Basic for Applications (VBA) 、Visual C# 和 Visual Basic 等開發語言支援 IDispatch 介面,而非 IUnknown,因此無法存取 MAPIOBJECT。 如果在此事件中存取上層項目的其他屬性或方法,Outlook 會引發錯誤。
如果實作者存取基底 IMessage 物件,並且變更該物件上的屬性,Outlook 將會呈現該項目以反映 IMessage 物件的變更。 實作者不需要在IMessage物件上呼叫SaveChanges,即可使變更反映在 Outlook 中。
實作者必須在事件完成之前,釋放事件中從 MAPIOBJECT 屬性取得的物件。 不支援在事件內容外部使用該物件,而且進行此嘗試將會導致無法預測的行為。
另請參閱
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。