...
Deck of Cards | ||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||
|
Wiki Markup |
---|
{dojo-tabs:theme=tundra|id=1}
{dojo-tab:title=C|selected=true}
*C*
int GRD_API GrdWrite(
HANDLE hGrd,
DWORD dwAddr,
DWORD dwLng,
void *pData,
void *pReserved
);
{dojo-tab}
{dojo-tab:title=C#|selected=true}
*C#*
{dojo-tab}
{dojo-tab:title=Visual Basic (Declaration)}
*Visual Basic*
{dojo-tab}
{dojo-tab:title=Visual C++}
*Visual C++*
{dojo-tab}
{dojo-tabs} |
| Входные параметры
| ||||||||
hGrd | хэндл, через который будет выполнена данная операция | ||||||||
dwAddr | адрес первого записываемого байта в ключе. Если dwAddr задать равным GrdSeekCur (0xFFFFFFFF), то в качестве значения адреса памяти в электронном ключе, будет использовано текущее значение этого адреса ассоциированное с данным хэндлом. В случае успешного выполнения операции записи, текущее значение смещения внутри ключа будет передвинуто за конец записанного блока. Это полезно при организации последовательной потоковой записи данных.
| ||||||||
dwLng | количество записываемых байтов | ||||||||
pData | адрес буфера, содержащего данные для записи | pReserved | зарезервировано. Значение должно быть равно NULL
|
Card | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
|
GrdE_VerifyError | Ошибка верификации после нескольких повторов; запись прекращена |
GrdE_CRCErrorWrite | Ошибка CRC; запись прекращена |
GrdE_VerifyError | Попытка записи в read-only поля |
|
Expand | ||
---|---|---|
| ||
Функция GrdWrite позволяет записывать данные в область памяти ключа, на которую не наложен запрет на запись и если ключ не был заблокирован на запись другим потоком. Адрес в ключе, по которому будет помещен первый из записанных байт, задается параметром dwAddr, количество записываемых байт - параметром dwLng. Режим адресации задается при вызове функции GrdSetWorkMode (по умолчанию используется режим UAM). В случае успешного выполнения функции, начиная с адреса, заданного параметром dwAddr, в ключ будет записано dwLng-байт данных, взятых из буфера с адресом pData. При попытке записать данные в область памяти, на которую установлен запрет на запись, или за пределами адресуемой области памяти, будет возвращено GrdE_OK, однако ни один байт записан не будет. Если ключ был заблокирован другим потоком, будет возвращена ошибка GrdE_DongleLocked. | ||
Expand | ||
| ||
Пример для используемого средства разработки см . в директории:"\%Program Files%\Guardant\Guardant 6\%PublicCode%\Samples\x86\Win32\General Guardant API\" |