@@ -83,7 +83,25 @@ bool CVerification_XAuthKey::Verification_XAuthKey_FileRead(VERIFICATION_XAUTHKE
8383 return false ;
8484 }
8585 }
86- BaseLib_Time_TimeToStr (pSt_XAuthInfo->st_AuthRegInfo .tszStartTime );
86+
87+ if (ENUM_AUTHORIZE_MODULE_SERIAL_TYPE_DAY == pSt_XAuthInfo->st_AuthRegInfo .enSerialType )
88+ {
89+ XENGINE_LIBTIME st_SysTime = {};
90+ XENGINE_LIBTIME st_EndTime = {};
91+ BaseLib_Time_GetSysTime (&st_SysTime);
92+ BaseLib_Time_StrToTime (pSt_XAuthInfo->st_AuthRegInfo .tszStartTime , &st_EndTime);
93+ if ((st_EndTime.wYear != st_SysTime.wYear ) || (st_EndTime.wMonth != st_SysTime.wMonth ) || (st_EndTime.wDay != st_SysTime.wDay ))
94+ {
95+ pSt_XAuthInfo->st_AuthRegInfo .nHasTime --;
96+ _xstprintf (pSt_XAuthInfo->st_AuthRegInfo .tszLeftTime , _X (" %lld" ), pSt_XAuthInfo->st_AuthRegInfo .nHasTime );
97+ BaseLib_Time_TimeToStr (pSt_XAuthInfo->st_AuthRegInfo .tszStartTime );
98+ }
99+ }
100+ else
101+ {
102+ BaseLib_Time_TimeToStr (pSt_XAuthInfo->st_AuthRegInfo .tszStartTime );
103+ }
104+ pSt_XAuthInfo->st_AuthAppInfo .nExecTime ++;
87105 return true ;
88106}
89107/* *******************************************************************
@@ -120,15 +138,13 @@ bool CVerification_XAuthKey::Verification_XAuthKey_FileWrite(VERIFICATION_XAUTHK
120138 // 更新使用时间
121139 if (ENUM_AUTHORIZE_MODULE_SERIAL_TYPE_SECOND == pSt_XAuthInfo->st_AuthRegInfo .enSerialType )
122140 {
123- XCHAR tszTimeStart[64 ];
124- XCHAR tszTimeEnd[64 ];
141+ XCHAR tszTimeEnd[64 ] = {};
125142 __int64x nUsedTime = 0 ;
126143
127- memset (tszTimeStart, ' \0 ' , sizeof (tszTimeStart));
128- memset (tszTimeEnd, ' \0 ' , sizeof (tszTimeEnd));
129144 BaseLib_Time_TimeToStr (tszTimeEnd);
130145 BaseLib_TimeSpan_GetForStr (pSt_XAuthInfo->st_AuthRegInfo .tszStartTime , tszTimeEnd, &nUsedTime, ENUM_XENGINE_BASELIB_TIME_TYPE_SECOND);
131146 pSt_XAuthInfo->st_AuthRegInfo .nHasTime -= nUsedTime;
147+ _xstprintf (pSt_XAuthInfo->st_AuthRegInfo .tszLeftTime , _X (" %lld" ), pSt_XAuthInfo->st_AuthRegInfo .nHasTime );
132148 }
133149 // 准备数据
134150 if (!Verification_XAuthKey_WriteMemory (tszDECodecBuffer, &nSize, pSt_XAuthInfo))
@@ -216,17 +232,7 @@ bool CVerification_XAuthKey::Verification_XAuthKey_KeyParse(VERIFICATION_XAUTHKE
216232 {
217233 // 其他类型的注册机制
218234 BaseLib_Time_GetSysTime (&st_SysTimer);
219- // 计算超时时间
220- if (ENUM_AUTHORIZE_MODULE_SERIAL_TYPE_DAY == pSt_XAuthInfo->st_AuthRegInfo .enSerialType )
221- {
222- BaseLib_Time_GetSysTime (&st_SysTimer);
223- BaseLib_Time_StrToTime (pSt_XAuthInfo->st_AuthRegInfo .tszStartTime , &st_EndTimer);
224- if ((st_EndTimer.wYear != st_SysTimer.wYear ) || (st_EndTimer.wMonth != st_SysTimer.wMonth ) || (st_EndTimer.wDay != st_SysTimer.wDay ))
225- {
226- pSt_XAuthInfo->st_AuthRegInfo .nHasTime --;
227- }
228- }
229- else if (ENUM_AUTHORIZE_MODULE_SERIAL_TYPE_SECOND == pSt_XAuthInfo->st_AuthRegInfo .enSerialType )
235+ if (ENUM_AUTHORIZE_MODULE_SERIAL_TYPE_SECOND == pSt_XAuthInfo->st_AuthRegInfo .enSerialType )
230236 {
231237 XCHAR tszTimeEnd[64 ] = {};
232238 __int64x nUsedTime = 0 ;
@@ -262,8 +268,7 @@ bool CVerification_XAuthKey::Verification_XAuthKey_KeyParse(VERIFICATION_XAUTHKE
262268 return false ;
263269 }
264270 }
265- pSt_XAuthInfo->st_AuthAppInfo .nExecTime ++;
266-
271+
267272 SYSTEMAPI_SERIAL_INFOMATION st_SDKSerial = {};
268273 SystemApi_HardWare_GetSerial (&st_SDKSerial);
269274 if (ENUM_AUTHORIZE_MODULE_VERMODE_TYPE_LOCAL != pSt_XAuthInfo->st_AuthRegInfo .enVModeType )
0 commit comments