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

Compare with Current View Page History

« Previous Version 14 Next »

Функция GrdGetInfo получает информацию из защищенного контейнера по указанному коду.

    int GRD_API GrdGetInfo(	
      HANDLE hGrd,
      DWORD dwInfoCode,
      DWORD *pInfoData,
      DWORD dwInfoSize
    );

    hGrd

    хэндл, из которого нужно получить информацию

    dwInfoCode

    код запрашиваемой информации, см. константы GrdGIX_XXXXX

    pInfoData

    указатель на буфер, в который будет помещена запрашиваемая информация

    dwInfoSize

    размер буфера

    dwInfoCode

    dwInfoSize

    Комментарий

    // Информация об API

    GrdGIV_VerAPI

    4

    Версия API (0x05401234=5.40.12.34)

    // Common Mode

    GrdGIM_WorkMode

    4

    Режим работы, заданный комбинацией флагов GrdWM_XXXX в функции GrdSetWorkMode

    GrdGIM_HandleMode

    1

    Режим хэндла (монопольный/многопоточный)

    // Текущие режимы поиска и логина, установленные функцией GrdSetFindMode

    GrdGIF_Remote

    1

    Локальный и/или удаленный ключ, комбинация флагов GrdFMR_ХХХХ (GrdFMR_Local + GrdFMR_Remote)

    GrdGIF_Flags

    1

    Комбинация флагов поиска GrdFM_XXXX, установленных в параметре dwFlags функции GrdSetFindMode

    GrdGIF_Prog

    1

    Номер программы

    GrdGIF_ID

    4

    ID ключа

    GrdGIF_SN

    2

    Серийный номер

    GrdGIF_Ver

    1

    Версия

    GrdGIF_Mask

    2

    Битовая маска

    GrdGIF_Type

    2

    Тип ключа

    GrdGIF_Model

    4

    Биты возможных моделей ключа. Список моделей кодируется битами, установленными в разрядах с номерами, соответствующими значениям констант GrdDM_XXX 1 << GrdDM_XXX (GS1L, GS1U, GF1L, GS2L, GS2U )

    GrdGIF_Interface

    4

    Биты возможных интерфейсов. Список интерфейсов кодируется битами, установленными в разрядах с номерами, соответствующими значениям констант GrdDI_XXX 1 << GrdDI_XXX (LPT|USB)

    // Регистрационная информация о текущем ключe, устанавливаемая функцией GrdLogin

    GrdGIL_Remote

    1

    Удаленный или локальный ключ. Если 0, то это локальный ключ, если 1, то удаленный

    GrdGIL_ID

    4

    ID текущего ключа

    GrdGIL_Model

    1

    Модель текущего ключа

    GrdGIL_Interface

    1

    Интерфейс текущего ключа

    GrdGIL_LockCounter

     

    Счетчик блокировок текущего ключа

    GrdGIL_Seek

    4

    Текущее значение указателя памяти ключа в текущей системе адресации

    // Регистрационная информация о текущем удаленном или локальном драйвере ключа

    GrdGIL_DrvVers

    2

    Версия драйвера (0x0551=5.51)

    GrdGIL_DrvBuild

    1

    Номер билда драйвера

    GrdGIL_PortLPT

    2

    Адрес LPT порта, к которому подключен текущий ключ (0 == USB)

    // Регистрационная информация о текущем удаленном ключе

    GrdGIR_VerSrv

    8

    Версия и номер билда сервера Guardant Net

    GrdGIR_LocalIP

    15

    Локальный IP-адрес сервера Guardant Net

    GrdGIR_LocalPort

    2

    Локальный IP-порт сервера Guardant Net

    GrdGIR_LocalNB

    15

    Локальное NetBIOS-имя сервера Guardant Net

    GrdGIR_RemoteIP

    15

    Удаленный IP-адрес сервера Guardant Net

    GrdGIR_RemotePort

    2

    Удаленный IP-порт сервера Guardant Net

    GrdGIR_RemoteNB

    15

    Удаленное NetBIOS-имя сервера Guardant Net

    Функция GrdGetInfo записывает по адресу, указанному в параметре pInfoData значение, содержащее запрошенную информацию из хэндла. Размер передаваемого буфера указывается параметром dwInfoSize.

     public static GrdE GrdGetInfo(Handle grdHandle, GrdInfo infoCode, out byte infoData)
     public static GrdE GrdGetInfo(Handle grdHandle, GrdInfo infoCode, out ushort infoData)
     public static GrdE GrdGetInfo(Handle grdHandle, GrdInfo infoCode, out uint infoData)
     public static GrdE GrdGetInfo(Handle grdHandle, GrdInfo infoCode, out ulong infoData)
     public static GrdE GrdGetInfo(Handle grdHandle, GrdInfo infoCode, byte[] infoData)
     public static GrdE GrdGetInfo(Handle grdHandle, GrdGIR infoCode, out byte[] infoData)

     

     

    public static GrdE GrdGetInfo(Handle grdHandle, GrdInfo infoCode, byte[] infoData)
    public static GrdE GrdGetInfo(Handle grdHandle, GrdInfo infoCode, short[] infoData)
    public static GrdE GrdGetInfo(Handle grdHandle, GrdInfo infoCode, int[] infoData)
    public static GrdE GrdGetInfo(Handle grdHandle, GrdInfo infoCode, long[] infoData)

     

     

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

    Вызов с параметрами GrdGIL_DrvVers, GrdGIL_DrvBuild приводит к возврату значений в формате, полностью аналогичном формату GrdDrvGetVersion. 

    Вызов с параметром GrdGIV_VerAPI приводит к возврату 0x05400000, что соответствует верcии API 5.40 (т. е. кодируется в старшем слове, в шестнадцатеричном формате).

    • No labels