Текущий раздел:

Описания RDS

Приложения

Приложение А. Функции, константы и структуры RDS

А.5. Сервисные функции и макросы RDS

А.5.10. Загрузка и сохранение данных блока

А.5.10.4. rdsWriteBlockData – записать данные блока в двоичном формате

# Приложения

## Приложение А. Функции, константы и структуры RDS

### А.5. Сервисные функции и макросы RDS

#### А.5.10. Загрузка и сохранение данных блока

##### А.5.10.4. rdsWriteBlockData – записать данные блока в двоичном формате

Функция rdsWriteBlockData записывает двоичные данные блока – при загрузке они могут быть считаны функцией rdsReadBlockData.

      BOOL RDSCALL rdsWriteBlockData(
        LPVOID Buffer,    // Указатель на начало области памяти
        int Size          // Размер данных
      );

Тип указателя на эту функцию

RDS_BpVI

Параметры

Buffer(LPVOID)
  Указатель на начало области памяти, в которой находятся записываемые данные.
Size(int)
  Размер записываемых данных в байтах.

Возвращаемое значение

TRUE – данные записаны успешно, FALSE – ошибка записи.

Примечания

Эта функция может вызываться только из функции модели блока в момент реакции на события записи данных RDS_BFM_SAVEBIN и записи состояния RDS_BFM_SAVESTATE в двоичном формате. Во всех остальных случаях функция немедленно возвращает FALSE.

При сохранении данных или состояния блока в двоичном формате данные, переданные в функцию rdsWriteBlockData, записываются либо во внутренний буфер, либо непосредственно в файл. Данные пишутся последовательно, каждый вызов функции добавляет к записанным данным Size байтов начиная с указателя Buffer. Эта функция очень похожа на большинство функций стандартных библиотек, записывающих данные в файл, только в ней не нужно указывать дескриптор файла или другого получателя данных – он определяется RDS и инициализируется перед вызовом реакций на события RDS_BFM_SAVEBIN и RDS_BFM_SAVESTATE.

Пример

Примеры использования функции rdsWriteBlockData приведены в §2.8.2, §2.12.4 и §2.14.3 руководства программиста.

См. также

rdsReadBlockData, RDS_BFM_SAVEBIN, RDS_BFM_SAVESTATE.