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


Событие ReportItem.BeforeRead (Outlook)

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

Синтаксис

выражение. BeforeRead

Выражение Переменная, представляющая объект ReportItem .

Замечания

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

Событие 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 . Попытка использовать этот объект вне контекста события не поддерживается и приводит к непредсказуемому поведению.

См. также

Объект ReportItem

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.