Метод ICrmLogControl::WriteLogRecord (comsvcs.h)
Рабочая роль CRM и компенсатор CRM используют этот метод для записи неструктурированных записей журналов в журнал. Этот метод обычно используется компонентами CRM, написанными на языке C++. Записи записываются лениво в журнал и должны быть вынуждены, прежде чем они становятся устойчивыми. (См. ICrmLogControl::ForceLog.)
Синтаксис
HRESULT WriteLogRecord(
[in] BLOB [] rgBlob,
[in] ULONG cBlob
);
Параметры
[in] rgBlob
Массив BLOB-объектов, формируемых записью журнала. BLOB - это тип данных Windows, используемый для хранения произвольного объема двоичных данных.
[in] cBlob
Количество BLOB-объектов в массиве.
Возвращаемое значение
Этот метод может возвращать следующие значения.
Возвращаемый код | Описание |
---|---|
|
Метод успешно завершен. |
|
Число BLOB-объектов равно нулю. |
|
Указатель NULL был указан в качестве аргумента. |
|
Этот метод был вызван в неправильном состоянии; либо перед RegisterCompensator, либо после завершения транзакции (рабочая роль CRM). |
|
Транзакция прервана, скорее всего, из-за времени ожидания транзакции. |
Замечания
Неструктурированные записи — это просто буфер байтов. Метод реализует возможность сбора, позволяя секциям конкретной записи журнала CRM создаваться из массива BLOB-объектов, которая является структурой, содержащей указатель на данные, а также количество байтов. Это уменьшает копирование данных, что приводит к только одной копии непосредственно из пространства памяти CRM в буфер диспетчера журналов.
Неструктурированные и структурированные записи журнала не могут быть смешанными; можно вызвать WriteLogRecord или WriteLogRecordVariants, но не одной рабочей роли CRM или компенсатора CRM.
Не следует включать типы указателей в структуры данных, содержащиеся в BLOB-объектах в записи журнала. Ссылки на объекты больше не допустимы во время этапа восстановления, так как компенсатор CRM выполняется в другом процессе, отличном от рабочей роли CRM, которая написала запись журнала. Включение типов указателей в большие двоичные объекты в записи журнала может привести к сбою или повреждению приложения во время восстановления.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 Профессиональный [только классические приложения] |
минимальный поддерживаемый сервер | Windows 2000 Server [только классические приложения] |
целевая платформа | Виндоус |
заголовка | comsvcs.h |