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

Compare with Current View Page History

« Previous Version 3 Next »

Функция GrdSetFindMode устанавливает условия поиска ключей, а также режимы работы для хэндла.

 

C
int GRD_API GrdSetFindMode(
HANDLE hGrd,
DWORD dwRemoteMode,
DWORD dwFlags,
DWORD dwProg,
DWORD dwID,
DWORD dwSN,
DWORD dwVer,
DWORD dwMask,
DWORD dwType,
DWORD dwModels,
DWORD dwInterfaces
);

C#

Visual Basic

Visual C++

hGrd

хэндл, через который будет установлен режим поиска ключей

dwRemoteMode

комбинация флагов GrdFMR_XXX, задающих режим поиска локальных и/или удаленных ключей

GrdFMR_Local

Локальный ключ

GrdFMR_Remote

Удаленный ключ

dwFlags

комбинация флагов GrdFM_XXX, разрешающих учитывать при поиске параметры, записанные в обязательных полях ключа

GrdFM_NProg

Учитывать при поиске параметр dwNProg

GrdFM_ID

Учитывать при поиске параметр dwID

GrdFM_SN

Учитывать при поиске параметр dwSN

GrdFM_Ver

Учитывать при поиске параметр dwVer

GrdFM_Mask

Учитывать при поиске параметр dwMask

GrdFM_Type

Учитывать при поиске параметр dwType

dwProg

значение, которое должно находиться в поле «Номер программы»

dwID

значение, которое должно находиться в поле «ID»

dwSN

значение, которое должно находиться в поле «Серийный номер»

dwVer

значение, которое должно соответствовать условиям для поля «Версия»

dwMask

значение, которое должно соответствовать условиям для поля «Битовая маска»

dwType

комбинация флагов GrdDT_XXX, задающая типы ключей, удовлетворяющие условиям поиска

GrdDT_DOS, GrdDT_Win

Ключ поддерживает защиту приложений, созданных для работы в DOS и в Windows

GrdDT_LAN

Ключ поддерживает защиту приложений, созданных для работы в локальных сетях

GrdDT_Time

Устаревш. флаг. Не используется в современных ключах. Не имеет отношения к ключам Guardant Time/Code Time

GrdDT_GSII64

Ключ содержит алгоритм GSII64: ключи Guardant Stealth II / Net II, Stealth III / Net III

GrdDT_PI

Ключ поддерживает технологию защищенных ячеек Guardant Stealth III / Net III

GrdDT_TRU

Ключ поддерживает технологию защищенного удаленного программирования Trusted Remote Update Guardant Stealth III / Net III

GrdDT_RTC

Ключ содержит часы реального времени

GrdDT_AES

Ключ поддерживает аппаратный алгоритм шифрования AES128

GrdDT_ECC

Ключ поддерживает аппаратный алгоритм шифрования ECC160

GrdDT_LoadableCode

Ключ поддерживает технологию загружаемого кода

dwModels

комбинация флагов GrdFMM_GSX, задающая список возможных моделей ключей, участвующих в поиске

GrdFMM_GS1L

Guardant Stealth LPT

GrdFMM_GS1U

Guardant Stealth USB

GrdFMM_GF1L

Guardant Fidus LPT

GrdFMM_GF1U

Guardant Fidus USB

GrdFMM_GS2L

Guardant StealthII LPT

GrdFMM_GS2U

Guardant StealthII USB

GrdFMM_GS3U

Guardant StealthIII USB

GrdFMM_GS1

Guardant Stealth I с любым интерфейсом

GrdFMM_GF

Guardant Fidus I с любым интерфейсом

GrdFMM_GS2

Guardant Stealth II с любым интерфейсом

GrdFMM_GS3

Guardant Stealth III с любым интерфейсом

GrdFMM_GS3SU

Guardant Sign/Time USB

GrdFMM_GS3S

Guardant Sign/Time с любым интерфейсом

GrdFMM_GSP

Софтверные ключи Guardant SP

GrdFMM_ALL

Любой ключ Guardant

dwInterfaces

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

GrdFMI_LPT

LPT порт

GrdFMI_USB

USB порт

GrdFMI_SP

Софтверный ключ

GrdFMI_ALL

Все варианты интерфейсов

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

 

GrdE_NeedLogout

Попытка вызова GrdSetFindMode после GrdLogin.

GrdE_InvalidArgs

Значение параметра поиска отличается от значения параметра, указанного при вызове GrdStartup.

Функция GrdSetFindMode задает условия, по которым будет осуществляться поиск электронных ключей. Можно задать условия поиска локальных или удаленных ключей нужного типа и модели, с нужным интерфейсом и набором дополнительных параметров.

Внимание!

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

Если в параметре dwFlags заданы дополнительные критерии поиска, то передаваемые через параметры функции дополнительные критерии поиска, также будут использованы при отборе ключей с подходящими под условия данными, записанными в соответствующие поля памяти. Параметры dwModels и dwInterfaces не имеют соответствующих флагов проверки и просто проверяются или нет по переданному значению режимов поиска.

При этом значения, записанные в памяти ключа будут сравниваться с параметрами функции. Для большинства из них требуется равенство, но есть и исключения. Значение, записанное в поле «Версия» ключа должно быть больше или равно значению параметра dwVer. Биты, установленные в параметре dwMask, должны быть установлены и в поле «Битовая маска» в ключе, но значения при этом могут быть не равны.

Условия поиска установленные при вызове GrdSetFindMode для конкретного хэндла сохраняются для всех попыток поиска до следующего вызова GrdSetFindMode.

GrdSetFindMode необходимо вызывать в рамках блока инициализации, до вызова GrdLogin. При попытке вызова GrdSetFindMode на залогиненном хэндле будет возвращена ошибка GrdE_NeedLogout.

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

"\%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