Метод ICrmLogControl::WriteLogRecord (comsvcs.h)
Рабочая роль CRM и компенсатор CRM используют этот метод для записи неструктурированных записей журнала в журнал. Этот метод обычно используется компонентами CRM, написанными на C++. Записи записываются в журнал отложенно, и их необходимо принудительно принудить, прежде чем они станут устойчивыми. (См. раздел ICrmLogControl::ForceLog.)
Синтаксис
HRESULT WriteLogRecord(
[in] BLOB [] rgBlob,
[in] ULONG cBlob
);
Параметры
[in] rgBlob
Массив больших двоичных объектов, образующих запись журнала. BLOB — это тип данных Windows, который используется для хранения произвольного объема двоичных данных.
[in] cBlob
Количество BLOB-объектов в массиве.
Возвращаемое значение
Этот метод может возвращать следующие значения.
Код возврата | Описание |
---|---|
|
Метод завершился успешно. |
|
Количество BLOB-объектов равно нулю. |
|
В качестве аргумента указан указатель NULL . |
|
Этот метод был вызван в неправильном состоянии; либо до RegisterCompensator, либо при завершении транзакции (рабочая роль CRM). |
|
Транзакция прервана, скорее всего, из-за времени ожидания транзакции. |
Комментарии
Неструктурированные записи — это просто буфер байтов. Метод реализует возможность сбора, позволяя создавать разделы определенной записи журнала CRM из массива БОЛЬШИХ двоичных объектов, который представляет собой структуру, содержащую указатель на данные и количество байтов. Это сокращает объем копирования данных, что приводит к по одной копии непосредственно из памяти CRM в буфер диспетчера журналов.
Неструктурированные и структурированные записи журнала нельзя смешивать; Либо WriteLogRecord, либо WriteLogRecordVariants могут вызываться, но не одновременно одной рабочей ролью CRM или компенсатором CRM.
Не следует включать типы указателей в структуры данных, содержащиеся в больших двоичных объектах, в записи журнала. Ссылки на объекты больше не являются допустимыми на этапе восстановления, так как компенсатор CRM выполняется в процессе, отличном от процесса рабочей роли CRM, которая написала запись журнала. Включение типов указателей в большие двоичные объекты в запись журнала может привести к сбою или повреждению приложения во время восстановления.
Требования
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | comsvcs.h |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по