Состояние NoScribble
Область применения: Outlook 2013 | Outlook 2016
Состояние NoScribble указывает, что изменения в сообщении сохраняются. Фактическое сохранение значений, хранящихся в пользовательском интерфейсе объекта формы, происходит при вызове клиентским приложением метода IPersistMessage::Save объекта формы. В следующей таблице описаны допустимые переходы из состояния NoScribble.
Метод IPersistMessage | Действие | Новое состояние |
---|---|---|
IPersistMessage::SaveCompleted(pMessage == NULL) |
Если флаг fSameAsLoad был true в вызове IPersistMessage::Save , который привел к переходу формы в состояние NoScribble, а сообщение было изменено, пометьте изменения как сохраненные и вызовите метод IMAPIViewAdviseSink::OnSaved . |
Normal |
IPersistMessage::SaveCompleted(pMessage != NULL) |
Вызовите метод IPersistMessage::HandsOffMessage (аналогичный методу OLE IPersistStorage::HandsOffStorage ), за которым следуют обычные действия SaveCompleted . Если saveCompleted прошло успешно, введите обычное состояние. В противном случае введите состояние HandsOffAfterSave . | Обычный или HandsOffAfterСохранение |
HandsOffMessage |
Рекурсивно вызовите метод HandsOffMessage во внедренных сообщениях или метод OLE IPersistStorage::HandsOffStorage во внедренных объектах OLE. Отпустите объект message и все внедренные сообщения или объекты. | HandsOffAfterSave |
Save, IPersistMessage::InitNew или IPersistMessage::Load |
Задайте для последней ошибки значение и верните E_UNEXPECTED. | NoScribble |
IPersistMessage::GetLastError |
Возвращает последнюю ошибку. | NoScribble |
Другие методы IPersistMessage: методы IUnknown или методы из других интерфейсов |
Задайте для последней ошибки значение и верните E_UNEXPECTED. | NoScribble |