Структура используемая в функции GrdApi.GrdFind для получения информации об электронном ключе
Пространство имен: Guardant
Синтаксис
#pragma pack(push,1)
typedef struct {
DWORD dwPublicCode; // Общий код доступа в числовом виде
BYTE byHrwVersion; // Аппаратная версия ключа (биты 0 -3: minor, биты 4 - 7: major)
BYTE byMaxNetRes; // Максимальный ресурс лицензий сетевого ключа (программируется компанией "Актив" при продаже ключа)
WORD wType; // Флаги типа ключа
DWORD dwID; // ID ключа (программируется компанией "Актив" при продаже ключа)// Соответствующие поля доступны из UAM режима
BYTE byNProg; // Номер программы
BYTE byVer; // Версия программы
WORD wSN; // Серийный номер
WORD wMask; // Битовая маска
WORD wGP; // Счетчик запусков GP (устаревшая технология, не используется)
WORD wRealNetRes; // Текущий ресурс лицензий сетевого ключа. Задается разработчиком, должен быть <= byMaxNetRes
DWORD dwIndex; // Индекс, используемый утилитами удаленного программирования
BYTE abyReservedISEE[0x1C]; // Зарезервированная память для будущего использования
WORD wWriteProtectS3; // SAM-адрес 1-го байта, доступного для записи. Если 0, запреты на запись отсутствуют.
WORD wReadProtectS3; // SAM-адрес 1-го байта, доступного для чтения. Если 0, запреты на чтение отсутствуют.
WORD wGlobalFlags; // Глобальные флаги
DWORD dwDongleState; // Состояние ключа.см.GrdDSF_XXX определение // В наличии с: // 1. Stealth Sign.(Номер прошивки >= 0x01000011h or 01.00.00.11)// 2. Guardant Code.
DWORD dwOldMPNum; // Старый номер прошивки (перед SFU).
BYTE abyReservedH[0x100 - 0x1A - 0x1C - 0x0E]; // Зарезервированная память для будущего использования
DWORD dwGrDrv_Platform; // Разрядность драйвера.Платформа (Win32/Win64).
DWORD dwGrDrv_Vers; // Версия драйвера(0х05401234=5.40.12.34)
DWORD dwGrDrv_Build; // Сборка драйвера
DWORD dwGrDrv_Reserved; // Зарезервированое значение
DWORD dwRkmUserAddr; // Адрес начала пользовательской памяти в 2-х байтовых словах
DWORD dwRkmAlgoAddrW; // Адрес таблицы размещения защищенных ячеек в словах
DWORD dwPrnPort; // Адрес LPT-порта (или 0, если ключ - USB)
DWORD dwClientVersion; // Зарезервированная версия клиента ключа // SAP start
DWORD dwRFlags; // Зарезервировано. Тип MCU
DWORD dwRProgVer; // Зарезервированная версия программы(в MCU)
DWORD dwRcn_rc; // Зарезервированный текущий номер и код ответа
DWORD dwNcmps; // Зарезервированный номер условий сравнения
DWORD dwNSKClientVersion; // Зарезервированная версия клиента (low byte - minor, hi - major)
DWORD dwModel; // Модель ключа
DWORD dwMcuType; // Тип ключа MCU
DWORD dwMemoryType; // Тип памяти ключа // Зарезервировано для будущего использования
BYTE abyReserved[0x200 - 0x100 - 0x28]; // Зарезервированная память для будущего использования.
} TGrdFindInfo;
#pragma pack(pop)
public unsafe struct FindInfo
{
public uint dwPublicCode; // Общий код доступа в числовом виде
public byte byHrwVersion; // Аппаратная версия ключа (биты 0 -3: minor, биты 4 - 7: major)
public byte byMaxNetRes; // Максимальный ресурс лицензий сетевого ключа (программируется компанией "Актив" при продаже ключа)
public ushort wType; // Флаги типа ключа
public uint dwID; // ID ключа (программируется компанией "Актив" при продаже ключа)// Соответствующие поля доступны из UAM режима
public byte byNProg; // Номер программы
public byte byVer; // Версия программы
public ushort wSN; // Серийный номер
public ushort wMask; // Битовая маска
public ushort wGP; // Счетчик запусков GP (устаревшая технология, не используется)
public ushort wRealNetRes; // Текущий ресурс лицензий сетевого ключа. Задается разработчиком, должен быть <= byMaxNetRes
public uint dwIndex; // Индекс, используемый утилитами удаленного программирования
public fixed byte abyReservedISEE[28];// Зарезервированная память для будущего использования
public ushort wWriteProtectS3; // SAM-адрес 1-го байта, доступного для записи. Если 0, запреты на запись отсутствуют.
public ushort wReadProtectS3; // SAM-адрес 1-го байта, доступного для чтения. Если 0, запреты на чтение отсутствуют
public ushort wGlobalFlags; // Глобальные флаги
public uint dwDongleState; // Состояние ключа.см.GrdDSF_XXX определение // В наличии с: // 1. Stealth Sign.(Номер прошивки >= 0x01000011h or 01.00.00.11)// 2. Guardant Code.
public uint dwOldMPNum; // Старый номер прошивки (перед SFU).
public fixed byte abyReservedH[188]; // Зарезервированная память для будущего использования
public uint dwGrDrv_Platform; // Разрядность драйвера.Платформа (Win32/Win64).
public uint dwGrDrv_Vers; // Версия драйвера(0х05401234=5.40.12.34)
public uint dwGrDrv_Build; // Сборка драйвера
public uint dwGrDrv_Reserved; // Зарезервированое значение
public uint dwRkmUserAddr; // Адрес начала пользовательской памяти в 2-х байтовых словах
public uint dwRkmAlgoAddrW; // Адрес таблицы размещения защищенных ячеек в словах
public uint dwPrnPort; // Адрес LPT-порта (или 0, если ключ - USB)
public uint dwClientVersion; // Зарезервированная версия клиента ключа // SAP start
public uint dwRFlags; // Зарезервировано. Тип MCU
public uint dwRProgVer; // Зарезервированная версия программы(в MCU)
public uint dwRcn_rc; // Зарезервированный текущий номер и код ответ
public uint dwNcmps; // Зарезервированный номер условий сравнения
public uint dwNSKClientVersion; // Зарезервированная версия клиента (low byte - minor, hi - major)
public uint dwModel; // Модель ключа
public uint dwMcuType; // Тип ключа MCU
public uint dwMemoryType; // Тип памяти ключа // Зарезервировано для будущего использования
public fixed byte abyReserved[216]; // Зарезервированная память для будущего использования.
}
public class GrdFindInfo
{
public int mPublicCode;Общий код доступа в числовом виде
public byte mHrwVersion;Аппаратная версия ключа (биты 0 -3: minor, биты 4 - 7: major)
public byte mMaxNetRes;Максимальный ресурс лицензий сетевого ключа (программируется компанией "Актив" при продаже ключа)
public short mType;Флаги типа ключа
public int mID;ID ключа (программируется компанией "Актив" при продаже ключа)// Соответствующие поля доступны из UAM режима
public byte mProg;Номер программы
public byte mVer;Версия программы
public short mSN;Серийный номер
public short mMask;Битовая маска
public short mGP;Счетчик запусков GP (устаревшая технология, не используется)
public short mRealNetRes;Текущий ресурс лицензий сетевого ключа. Задается разработчиком, должен быть <= byMaxNetRes
public int mIndex;Индекс, используемый утилитами удаленного программирования
public short mWriteProtectS3;SAM-адрес 1-го байта, доступного для записи. Если 0, запреты на запись отсутствуют.Только для Stealth III
public short mReadProtectS3;SAM-адрес 1-го байта, доступного для чтения. Если 0, запреты на чтение отсутствуют.Только для Stealth III
public short mGlobalFlags;Глобальные флаги
public int mDongleState;Состояние ключа.см.GrdDSF_XXX определение // В наличии с: // 1. Stealth Sign.(Номер прошивки >= 0x01000011h or 01.00.00.11)// 2. Guardant Code.
public int mOldMPNum; Старый номер прошивки (перед SFU).
public int mGrDrv_Platform;Разрядность драйвера.Платформа (Win32/Win64).
public int mGrDrv_Vers;Версия драйвера(0х05401234=5.40.12.34)
public int mGrDrv_Build;Сборка драйвера
public int mGrDrv_Reserved;Зарезервированое значение
public int mRkmUserAddr;Адрес начала пользовательской памяти в 2-х байтовых словах
public int mRkmAlgoAddrW;Адрес таблицы размещения защищенных ячеек в словах
public int mPrnPort;Адрес LPT-порта (или 0, если ключ - USB)
public int mClientVersion;Зарезервированная версия клиента ключа // SAP start
public int mRFlags;Зарезервировано. Тип MCU
public int mRProgVer;Зарезервированная версия программы(в MCU)
public int mRcn_rc;Зарезервированный текущий номер и код ответ
public int mNcmps;Зарезервированный номер условий сравнения
public int mNSKClientVersion;Зарезервированная версия клиента (low byte - minor, hi - major)
public int mModel;Модель ключа
public int mMcuType;Тип ключа MCU
public int mMemoryType;Тип памяти ключа // Зарезервировано для будущего использования
}