Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Deck of Cards
id001
Card
defaulttrue
labelC
Code Block
languagecpp
int  GcaGetTime(
HANDLE	      HANDLE hGrd,				
  TGrdSystemTime *pGrdSystemTime,
void	      void *pReserved				
);	
Expand
titleПараметры функции

hGrd

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

pGrdSystemTime

указатель на структуру структуру TGrdSystemTime:

typedef struct { 
    WORD wYear; // The year (2000 - 2099)
    WORD wMonth; // The month (January = 1, February = 2, ...)
    WORD wDayOfWeek; // The day of the week (Sunday = 0, Monday = 1, ...)
    WORD wDay; // The day of the month (1-31)
    WORD wHour; // The hour (0-23)
    WORD wMinute; // The minute (0-59)
    WORD wSecond; // The second (0-59)
    WORD wMilliseconds; // The millisecond (0-999)
} TGrdSystemTime;

pReserved

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

Expand
titleВозвращаемое значение функции

Набор ошибок Guardant API

Expand
titleОписание

Функция GcaExit используется для завершения загруженного приложения. Также она получает код возврата, который затем записывается в параметр pdwRet функции GrdCodeRun. Позволяет завершить приложение из любой точки, и не принуждает возвращаться в main(), чтобы выйти из приложения.

Функция не приводит к завершению приложения при работе под отладочной библиотекой.

 

...

Expand
titleВыходные параметры

Функция GcaGetTime получает время микросхемы таймера ключа.

 

Wiki Markup
{dojo-tabs:theme=tundra|id=1}
{dojo-tab:title=C|selected=true}
*C*
int  GcaGetTime(
HANDLE	       hGrd,				
TGrdSystemTime *pGrdSystemTime,
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}

Expand
titleВходные параметры

hGrd

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

pGrdSystemTime

указатель на структуру TGrdSystemTime:

typedef struct { 
    WORD wYear; // The year (2000 - 2099)
    WORD wMonth; // The month (January = 1, February = 2, ...)
    WORD wDayOfWeek; // The day of the week (Sunday = 0, Monday = 1, ...)
    WORD wDay; // The day of the month (1-31)
    WORD wHour; // The hour (0-23)
    WORD wMinute; // The minute (0-59)
    WORD wSecond; // The second (0-59)
    WORD wMilliseconds; // The millisecond (0-999)
} TGrdSystemTime;

pReserved

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

См. директорию:
"%Program Files%\Guardant\Guardant 6\%PublicCode%\Samples\ARM\"

GrdE_OK

нет ошибок

GrdE_NeedInitialization

требуется инициализация API (вызов GrdStartup)

GrdE_InvalidHandle

недействительный хэндл

GrdE_NoService

для алгоритма/ячейки сервис не предусмотрен

GrdE_InvalidArg

недопустимый параметр при вызове функции

Expand
titleОписание
Функция GcaGetTime возвращает время микросхемы таймера ключа Guardant Code Time.

Изменение времени ключа (в случае, если оно не защищено при выполнении GrdProtect), влияет на работу механизма DeadTime (или соответственно активированного LifeTime). К примеру, если установить время жизни - 1 год и 1 минута, активировать алгоритм, переставить дату на год вперед, то останется ~1 минута, аналогично наоборот, т.к. в ключе хранится именно дата деактивации алгоритма.
Expand
titleПример