Поделиться через


ItemEvents_10_Event.BeforeRead Событие

Определение

Происходит до того, как Microsoft Outlook начнет считывать свойства элемента.

public:
 event Microsoft::Office::Interop::Outlook::ItemEvents_10_BeforeReadEventHandler ^ BeforeRead;
event Microsoft.Office.Interop.Outlook.ItemEvents_10_BeforeReadEventHandler BeforeRead;
Event BeforeRead As ItemEvents_10_BeforeReadEventHandler 

Тип события

Комментарии

Событие BeforeRead возникает после Read события. В отличие от других событий с префиксом Before , это событие нельзя отменить. Чтобы определить, когда элемент выгружается из памяти, используйте Unload событие .

Событие BeforeRead соответствует событию Exchange Client Extensions (ECE) IExchExtMessageEvents::OnRead.

В событии BeforeRead можно получить доступ только к следующим элементам объекта элемента:

Свойство MAPIOBJECT является скрытым свойством в объектной модели Outlook. Это свойство предоставляет доступ к базовому объекту MAPI IMessage и может вызываться только через интерфейс IUnknown. Свойство доступно для программ, написанных на таких языках, как C или C++, которые поддерживают IUnknown. MAPIOBJECT недоступен через интерфейс IDispatch. Такие языки разработки, как Visual Basic для приложений (VBA), Visual C# и Visual Basic, поддерживают интерфейс IDispatch, а не IUnknown, поэтому они не могут получить доступ к MAPIOBJECT. Если в этом случае используется доступ к другим свойствам или методам родительского элемента, Outlook выдает ошибку.

Если реализатор обращается к базовому объекту IMessage и изменяет свойства этого объекта, Outlook отрисовывает этот элемент, отражающий изменения объекта IMessage . Реализующий объект не должен вызывать SaveChanges в объекте IMessage , чтобы изменения отражались в Outlook.

Перед завершением события разработчики должны освободить объект, полученный из свойства MAPIOBJECT . Попытка использовать этот объект вне контекста события не поддерживается и приводит к непредсказуемому поведению.

Применяется к