Функция GcaWrite производит запись данных в память ключа.

int GcaWrite(	
  HANDLE hGrd,
  DWORD	dwAddr,
  DWORD	dwLng,
  void *pData,
  void *pReserved
);	

hGrd

не используется

dwAddr

адрес первого записываемого байта в ключе. В случае успешного выполнения операции записи, текущее значение смещения внутри ключа будет передвинуто за конец записанного блока. Это полезно при организации последовательной потоковой записи данных.

dwLng

количество записываемых байтов

pData

адрес буфера, содержащего данные для записи

pReserved

зарезервировано. Значение должно быть равно NULL

GrdE_VerifyError

Ошибка верификации после нескольких повторов; запись прекращена

GrdE_CRCErrorWrite

Ошибка CRC; запись прекращена

GrdE_VerifyError

Попытка записи в read-only поля

Функция GcaWrite позволяет записывать данные в область памяти ключа, на которую не наложен запрет на запись. Адрес в ключе, по которому будет помещен первый из записанных байт, задается параметром dwAddr, количество записываемых байт - параметром dwLng. Режим адресации - SAM.

В случае успешного выполнения функции, с адреса, заданного параметром dwAddr, в ключ будет записано dwLng байт данных, взятые из буфера с адресом pData. В этом случае функция возвращает GrdE_OK. В случае если вы попытаетесь записать данные в область памяти, на которую наложен запрет на запись, также будет возвращено GrdE_OK, однако ни один байт записан не будет.