EgtExecutor :
- alla chiusura di Executor si rilascia eventuale chiave di rete.
This commit is contained in:
+38
-2
@@ -189,6 +189,10 @@ ExeExit( void)
|
||||
s_pGenLog = nullptr ;
|
||||
}
|
||||
|
||||
// libero eventuale chiave di rete
|
||||
if ( s_bNetHwKey)
|
||||
CloseNetHwKey() ;
|
||||
|
||||
return true ;
|
||||
}
|
||||
|
||||
@@ -256,11 +260,43 @@ ExeSetLockType( int nType)
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
bool
|
||||
ExeSetNetHwKey( bool bNetHwKey)
|
||||
ExeSetLockId( string sLockId)
|
||||
{
|
||||
// divido in tre parti XXX-YYY-ZZZ
|
||||
STRVECTOR vsTok ;
|
||||
Tokenize( sLockId, "-", vsTok) ;
|
||||
if ( vsTok.size() != 3)
|
||||
return false ;
|
||||
// se chiave software
|
||||
if ( vsTok[0] != KEY_LOCK_HW_START) {
|
||||
ExeSetNetHwKey( false) ;
|
||||
return ( s_nKeyType != KEY_LOCK_TYPE_HW) ;
|
||||
}
|
||||
// se chiave locale
|
||||
if (vsTok[1].front() != '1') {
|
||||
ExeSetNetHwKey( false) ;
|
||||
return true ;
|
||||
}
|
||||
// altrimenti chiave di rete
|
||||
int nKey ;
|
||||
if ( ! FromString( vsTok[1], nKey)) {
|
||||
ExeSetNetHwKey( false) ;
|
||||
return false ;
|
||||
}
|
||||
int nUserId = ( nKey % 10) ;
|
||||
if ( nKey < 100110)
|
||||
nUserId = 0 ;
|
||||
ExeSetNetHwKey( true, nUserId) ;
|
||||
return true ;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
bool
|
||||
ExeSetNetHwKey( bool bNetHwKey, int nUserId)
|
||||
{
|
||||
s_bNetHwKey = bNetHwKey ;
|
||||
SetEGnNetHwKey( s_bNetHwKey) ;
|
||||
return SetNetHwKey( bNetHwKey) ;
|
||||
return SetNetHwKey( bNetHwKey, nUserId) ;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user