You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Функция GrdPI_Activate активирует аппаратный алгоритм или защищенную ячейку.

 

C
int GRD_API GrdPI_Activate(
HANDLE hGrd,
DWORD dwItemNum,
DWORD dwActivatePsw
);

C#

Visual Basic

Visual C++

hGrd

хэндл защищенного контейнера для выполнения активации

dwItemNum

номер аппаратного алгоритма или защищенной ячейки для активации

dwActivatePsw

пароль для активации. Если пароль не используется, параметр должен быть равен 0

Возможные ошибки

GrdE_AccessDenied

неверный пароль активации, доступ к ячейке запрещен

GrdE_StatusUnchangeable

достигнут лимит количества ошибок, статус ячейки изменить нельзя

GrdE_NoService

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

 

Стандартный набор ошибок

Функция GrdPI_Activate активирует аппаратный алгоритм или любую другую защищенную ячейку. Активацию ячейки можно производить в том случае, когда она была создана неактивной, либо была деактивирована через GrdPI_Deactivate. Для активации можно потребовать указать пароль активации dwActivatePsw, который задается при создании ячейки или алгоритма. При создании ячейки в GRDUTIL пароль требуется по умолчанию.

Если алгоритм или ячейка находятся в активном состоянии (Active), функция возвращает GrdE_OK вне зависимости от правильности пароля активации.

Если при попытке активации неактивной ячейки был указан неверный пароль dwActivatePsw, функция GrdPI_Activate возвращает ошибку GrdE_AccessDenied. При этом автоматически в ключе уменьшается счетчик ошибок доступа к ячейке, который задается при создании ячейки. Когда значение счетчика ошибок доходит до 0, статус ячейки становится неизменяемым, то есть ячейку больше невозможно активировать/деактивировать/читать/менять ее значение. Однако если алгоритм находился в состоянии Active, функция GrdTransform будет нормально работать.

Пример для используемого средства разработки см. в директории:

"\%Program Files%\Guardant\Guardant 6\%PublicCode%\Samples\x86\Win32\General Guardant API\"
или
"\%Program Files%\Guardant\Guardant 6\%Public Code%\Samples\x64\Win64\General Guardant API\"

  • No labels