METHOD ChkArr33() CLASS TMGSesamo
// Serás DEMO por 33 dias
IF File( ::cArchLyP:= GetWinDir()+"\dmi&d.cfg" )
// Restauro array para demos
if ( ::nPos:= ::Restaura() ) == 0
// Agrego ArchArray
aAdd( ::aSesamoIni, {Encrypt( ::cAppName ), Array( _ARRSSMO ) } )
::nPos:= Len( ::aSesamoIni )
::ArrConfigDm()
::GuardaArr()
end
ELSE
// Genero ArchArra[code][/code]y
::aSesamoIni:= { {Encrypt( ::cAppName ), Array( _ARRSSMO ) } }
::nPos:= 1
::ArrConfigDm()
::GuardaArr()
END
::aSesamo:= ::aSesamoIni[::nPos,_SUBARR]
return( nil )
// Fin
METHOD ArrConfigDm() INLINE ;
::aSesamoIni[::nPos,_SUBARR,IniSerUUID] := Encrypt( ::SerialProtect() ), ;
::aSesamoIni[::nPos,_SUBARR,IniSerExa] := Encrypt( "" ), ;
::aSesamoIni[::nPos,_SUBARR,IniExpDmo] := Encrypt( DtoC( Date() +33 ) ), ;
::aSesamoIni[::nPos,_SUBARR,IniFeCtrl] := Encrypt( DtoC( Date() ) ) , ;
::aSesamoIni[::nPos,_SUBARR,IniFeExpAb] := Encrypt( DtoC( Date() +33 ) ), ;
::aSesamoIni[::nPos,_SUBARR,IniUsuario] := Encrypt( "INVITADO" ) , ;
::aSesamoIni[::nPos,_SUBARR,IniVersion] := Encrypt( GetFileVersionInfo( ::cAppExe,_APP_VERS ) ), ;
::aSesamoIni[::nPos,_SUBARR,InieMeGe] := Encrypt( _KEYCRYPT ), ;
nil
//-------------------------------------------------------------------------- \\
// Identificador de PC del Usuario
//
METHOD SerialProtect() CLASS TMGSesamo
local oLoc := CreateObject( "wbemScripting.SwbemLocator" )
local oSrv := oLoc:ConnectServer(,"root\cimv2")
local aDrives := oSrv:ExecQuery( "SELECT * FROM Win32_ComputerSystemProduct" )
local oDrive, ;
aData := {}, ;
cSerial := "", ;
nLen , ;
nAT
for each oDrive in aDrives
aAdd( aData, oDrive:UUID )
//? ALLTRIM((oDrive:Name)) Nombre de Placa madre
next
nLen:= Len( aData )
For nAt := 1 to nLen
cSerial += Upper( AllTrim( cStr( aData[nAt] ) ) )
next nAt
return( cSerial )
// Fin
#define BUILD_DATE substr(__DATE__,7,2) +"-"+ substr(__DATE__,5,2) +"-"+ substr(__DATE__,1,4)
METHOD Activate() CLASS TProgram
_date()
DEFINE WINDOW ::oWnd MDI TITLE ::cName
....
function _date()
local dDate := date()
if dDate > ctod(BUILD_DATE) + 60 // 60 dias de prueba
? "La version demo ha expirado"
QUIT
endif
return( dDate )
Return to FiveWin para Harbour/xHarbour
Users browsing this forum: karinha, nageswaragunupudi and 31 guests