|
10 | 10 | // Purpose: 验证模块导出定义 |
11 | 11 | // History: |
12 | 12 | *********************************************************************/ |
| 13 | +typedef enum |
| 14 | +{ |
| 15 | + ENUM_AUTHORIZE_MODULE_SERIAL_TYPE_UNKNOW = 0, //无法识别的充值卡 |
| 16 | + ENUM_AUTHORIZE_MODULE_SERIAL_TYPE_SECOND = 1, //秒钟,本地使用在read和write的时候更新 |
| 17 | + ENUM_AUTHORIZE_MODULE_SERIAL_TYPE_DAY = 2, //天数,本地使用天数卡,不使用不减天数. |
| 18 | + ENUM_AUTHORIZE_MODULE_SERIAL_TYPE_TIME = 3, //次数卡 |
| 19 | + ENUM_AUTHORIZE_MODULE_SERIAL_TYPE_CUSTOM = 4 //自定义过期日期 |
| 20 | +}ENUM_AUTHORIZE_MODULE_SERIAL_TYPE, * LPENUM_AUTHORIZE_MODULE_SERIAL_TYPE; |
| 21 | +typedef enum |
| 22 | +{ |
| 23 | + ENUM_AUTHORIZE_MODULE_CDKEY_TYPE_UNKNOW = 0, //未注册,Authorize_CDKey_GetLeftTimer将返回失败 |
| 24 | + ENUM_AUTHORIZE_MODULE_CDKEY_TYPE_TEMP = 1, //临时,Authorize_CDKey_GetLeftTimer一次后过期,需要Write |
| 25 | + ENUM_AUTHORIZE_MODULE_CDKEY_TYPE_TRY = 2, //试用 |
| 26 | + ENUM_AUTHORIZE_MODULE_CDKEY_TYPE_OFFICIAL = 3, //正式版 |
| 27 | + ENUM_AUTHORIZE_MODULE_CDKEY_TYPE_UNLIMIT = 4, //无限制版,永不过期.CDKEY不做任何验证 |
| 28 | + ENUM_AUTHORIZE_MODULE_CDKEY_TYPE_EXPIRED = 5 //已过期的版本,Authorize_CDKey_GetLeftTimer将返回失败 |
| 29 | +}ENUM_AUTHORIZE_MODULE_CDKEY_TYPE, * LPENUM_AUTHORIZE_MODULE_CDKEY_TYPE; |
| 30 | +typedef enum |
| 31 | +{ |
| 32 | + ENUM_AUTHORIZE_MODULE_HW_TYPE_UNKNOW = 0, //未指定 |
| 33 | + ENUM_AUTHORIZE_MODULE_HW_TYPE_CPU = 1, //CPU序列号 |
| 34 | + ENUM_AUTHORIZE_MODULE_HW_TYPE_DISK = 2, //硬盘序列号 |
| 35 | + ENUM_AUTHORIZE_MODULE_HW_TYPE_BOARD = 3, //主板序列号 |
| 36 | + ENUM_AUTHORIZE_MODULE_HW_TYPE_MAC = 4, //网卡MAC地址 |
| 37 | + ENUM_AUTHORIZE_MODULE_HW_TYPE_BIOS = 5 //BIOS序列号 |
| 38 | +}ENUM_AUTHORIZE_MODULE_HW_TYPE, * LPENUM_AUTHORIZE_MODULE_HW_TYPE; |
| 39 | +typedef enum |
| 40 | +{ |
| 41 | + ENUM_AUTHORIZE_MODULE_VERMODE_TYPE_UNKNOW = 0, //未知 |
| 42 | + ENUM_AUTHORIZE_MODULE_VERMODE_TYPE_LOCAL = 0x01, //本地 |
| 43 | + ENUM_AUTHORIZE_MODULE_VERMODE_TYPE_NETWORK = 0x02, //网络 |
| 44 | +}ENUM_AUTHORIZE_MODULE_VERMODE_TYPE, * LPENUM_AUTHORIZE_MODULE_VERMODE_TYPE; |
13 | 45 | ////////////////////////////////////////////////////////////////////////// |
14 | 46 | // 导出定义 |
15 | 47 | ////////////////////////////////////////////////////////////////////////// |
@@ -53,6 +85,63 @@ typedef struct |
53 | 85 | XCHAR tszTokenType[128]; // 授权类型 |
54 | 86 | int nExpiredTime; // 过期时间 |
55 | 87 | }VERIFICATION_TOKENINFO; |
| 88 | +typedef struct |
| 89 | +{ |
| 90 | + XCHAR tszAddr[XPATH_MAX]; //服务器或者域名地址 |
| 91 | + int nPort; //端口号码,如果>0表示CDKEY验证失败后改为网络验证 |
| 92 | + //版本信息 |
| 93 | + struct |
| 94 | + { |
| 95 | + XCHAR tszAppName[128]; //应用程序名称 |
| 96 | + XCHAR tszAppVer[128]; //应用程序版本号 |
| 97 | + __int64x nExecTime; //程序已经执行次数,调用Authorize_CDKey_GetLeftTimer会更新 |
| 98 | + bool bInit; //是否初始化,由用户控制 |
| 99 | + }st_AuthAppInfo; |
| 100 | + //CDKEY信息 |
| 101 | + struct |
| 102 | + { |
| 103 | + XCHAR tszHardware[1024]; //硬件码 |
| 104 | + XCHAR tszCreateTime[64]; //CDKEY创建日期,年/月/日-小时:分钟:秒 |
| 105 | + XCHAR tszRegisterTime[64]; //注册时间,年/月/日-小时:分钟:秒 |
| 106 | + XCHAR tszLeftTime[64]; //总的剩余时间,过期日期,根据nLeftType决定此值的意义 |
| 107 | + XCHAR tszStartTime[64]; //当前启动时间,由系统读取CDKEY的时候自动更新,天数和分钟有效 |
| 108 | + XCHAR tszExpiryTime[64]; //过期的时间,需要调用Authorize_CDKey_GetLeftTimer并且Write才生效 |
| 109 | + __int64x nHasTime; //当前还拥有时间,根据nLeftType决定此值的意义,调用Authorize_CDKey_GetLeftTimer会更新 |
| 110 | + ENUM_AUTHORIZE_MODULE_SERIAL_TYPE enSerialType; //过期类型,参考:ENUM_AUTHORIZE_MODULE_SERIAL_TYPE |
| 111 | + ENUM_AUTHORIZE_MODULE_CDKEY_TYPE enRegType; //注册类型,参考:ENUM_AUTHORIZE_MODULE_CDKEY_TYPE |
| 112 | + ENUM_AUTHORIZE_MODULE_HW_TYPE enHWType; //硬件类型,参考:ENUM_AUTHORIZE_MODULE_HW_TYPE |
| 113 | + ENUM_AUTHORIZE_MODULE_VERMODE_TYPE enVModeType; //验证方式,参考:ENUM_AUTHORIZE_MODULE_VERMODE_TYPE |
| 114 | + }st_AuthRegInfo; |
| 115 | + //临时序列号 |
| 116 | + struct |
| 117 | + { |
| 118 | + //次数限制 |
| 119 | + struct |
| 120 | + { |
| 121 | + XCHAR tszTimeSerial[128]; |
| 122 | + int nTimeCount; //使用次数 |
| 123 | + }st_TimeLimit; |
| 124 | + //时间限制 |
| 125 | + struct |
| 126 | + { |
| 127 | + XCHAR tszDataTime[128]; //过期时间 |
| 128 | + XCHAR tszDataSerial[128]; //序列号 |
| 129 | + bool bTimeAdd; //真,过期时间是设置的日期-创建日期.假过期日期就是设定的日期 |
| 130 | + }st_DataLimit; |
| 131 | + //无限制 |
| 132 | + struct |
| 133 | + { |
| 134 | + XCHAR tszUNLimitSerial[128]; //无限制序列号 |
| 135 | + }st_UNLimit; |
| 136 | + }st_AuthSerial; |
| 137 | + //注册的用户信息,可以不填 |
| 138 | + struct |
| 139 | + { |
| 140 | + XCHAR tszUserName[64]; //注册的用户 |
| 141 | + XCHAR tszUserContact[64]; //联系方式,电子邮件或者手机等 |
| 142 | + XCHAR tszCustom[1024]; //自定义数据 |
| 143 | + }st_AuthUserInfo; |
| 144 | +}VERIFICATION_XAUTHKEY; |
56 | 145 | ////////////////////////////////////////////////////////////////////////// |
57 | 146 | // 导出函数 |
58 | 147 | ////////////////////////////////////////////////////////////////////////// |
|
0 commit comments