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

Синтаксис

    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
    );	

    hGrd

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

    dwRemoteMode

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

    GrdFMR_Local

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

    GrdFMR_Remote

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

    dwFlags

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

    GrdFM_NProg

    Учитывать при поиске параметр «Номер программы»

    GrdFM_ID

    Учитывать при поиске параметр «ID»

    GrdFM_SN

    Учитывать при поиске параметр «Серийный номер»

    GrdFM_Ver

    Учитывать при поиске параметр «Версия»

    GrdFM_Mask

    Учитывать при поиске параметр  «Битовая маска»

    GrdFM_Type

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

    dwProg

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

    dwID

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

    dwSN

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

    dwVer

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

    dwMask

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

    dwType

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

    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_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

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

    GrdFMI_LPT

    Ключи с интерфейсом LPT

    GrdFMI_USB

    Ключи с интерфейсом USB

    GrdFMI_SP

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

    GrdFMI_ALL

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

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

     

    GrdE_NeedLogout

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

    GrdE_InvalidArgs

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

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

    Внимание!

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

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

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

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

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

    public static GrdE GrdSetFindMode(Handle grdHandle, GrdFMR remoteMode, GrdFM flags,
    	uint prog, uint id, uint sn, uint ver, uint mask, GrdDT type, GrdFMM models,GrdFMI interfaces)
    
    

    grdHandle [in] 

    Тип: Handle

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

    remoteMode [in] 

    Тип: GrdFMR

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

    flags [in] 

    Тип: GrdFM

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

    prog [in] 

    Тип: uint

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

    id [in] 

    Тип: uint

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

    sn [in] 

    Тип: uint

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

    ver [in] 

    Тип: uint

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

    mask [in] 

    Тип: uint

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

    type [in] 

    Тип: GrdDT

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

    models [in] 

    Тип: GrdFMM

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

    interfaces [in] 

    Тип: GrdFMI

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

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

    Внимание!

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

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

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

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

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

    public static GrdE GrdSetFindMode(Handle grdHandle, GrdFMR remoteMode, GrdFM flags,
    	byte prog, int id, short sn, byte ver, short mask, GrdDT type, GrdFMM models, GrdFMI interfaces) 

    grdHandle [in] 

    Тип: Handle

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

    remoteMode [in] 

    Тип: GrdFMR

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

    flags [in] 

    Тип: GrdFM

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

    prog [in] 

    Тип: byte

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

    id [in] 

    Тип: int

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

    sn [in] 

    Тип: short

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

    ver [in] 

    Тип: byte

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

    mask [in] 

    Тип: short

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

    type [in] 

    Тип: GrdDT

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

    models [in] 

    Тип: GrdFMM

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

    interfaces [in] 

    Тип: GrdFMI

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

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

    Внимание!

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

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

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

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

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

     

     

     

    • No labels