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