OgUtil

TurboPack OnGuard FMX

OgUtil Unit

Enter topic text here.

 

Types

{$IFDEF Win16}

 DWord      = LongInt;

 PDWord     = ^DWord;

 TGUID      = GUID;   {Delphi 1.0 defines it as GUID - Delphi 2.0 defines it as TGUID}

 AnsiChar   = Char;

 PAnsiChar  = PChar;

 {$ENDIF}

 

 {$IFNDEF FPC}

 PByte         = ^Byte;

 PByteArray    = ^TByteArray;

 TByteArray    = array [0..MaxStructSize div SizeOf(Byte) - 1] of Byte;

 PLongInt      = ^LongInt;

 {$ENDIF}

 PLongIntArray = ^TLongIntArray;

 TLongIntArray = array [0..MaxStructSize div SizeOf(LongInt) - 1] of LongInt;

 

TLongIntRec

PCode

TCode

TCodeType

TKey

TKeyType

TTMDContext

TMD5Context

TMD5Digest

T128Bit

T256Bit

TEsMachineInfoSet

TCodeStatus

 

 

Constants

DefAutoCheck      = True;

 DefAutoDecrease   = True;

 DefCheckSize      = True;

 DefStoreCode      = False;

 DefStoreModifier  = False;

 DefStoreRegString = False;

 

 OgVersionStr      = '1.15';

 

{magic values}

 DaysCheckCode    = Word($649B);

 DateCheckCode    = Word($A4CB);

 NetCheckCode     = Word($9341);

 RegCheckCode     = Word($D9F6);

 SerialCheckCode  = Word($3C69);

 UsageCheckCode   = Word($F3D5);

 SpecialCheckCode = Word($9C5B);

 

 {$IFDEF Win32}

 MaxStructSize = 1024 * 2000000; {2G}

 {$ELSE}

 MaxStructSize = 1024 * 64 - 1;  {64K}

 {$ENDIF}

 

 DefCodeType      = ctDate;

 DefKeyType       = ktRandom;

 

BaseDate

 

Exceptions

EOnGuardException = class(Exception);

 EOnGuardBadDateException = class(EOnGuardException);                 {!!.15}

 EOnGuardClockIssueException = class(EOnGuardException);

 

 

 

Variables

StrRes : TOgStringResource;

 

 

Routines

Generate Key Routines

_bm0                GenerateRandomKeyPrim

_bm0                GenerateMD5KeyPrim

_bm0                GenerateTMDKeyPrim

 

Modifier Routines

_bm0                ApplyModifierToKeyPrim

_bm0                CreateMachineID

_bm0                GenerateDateModifierPrim

_bm0                GenerateMachineModifierPrim

_bm0                GenerateStringModifierPrim

_bm0                GenerateUniqueModifierPrim

 

Hash Routines

_bm0                StringHashElf

 

Mixing Routines

_bm0                MixBlock

 

Utility Routines

_bm0                ExpandDate

_bm0                ShrinkDate

_bm0                BufferToHex

_bm0                BufferToHexBytes

_bm0                HexStringIsZero

_bm0                HexToBuffer

_bm0                GetCodeType

_bm0                GetExpirationDate

_bm0                OgFormatDate

_bm0                Max

_bm0                Min

_bm0                XorMem

 

_bm0                MyHashElf

_bm0                GetDiskSerialNumber

_bm0                GetDriveType

_bm0                HiWord

_bm0                CoCreateGuid

_bm0                timeGetTime

 

 

Date Code

_bm0                GetDateCodeValue

_bm0                InitDateCode

_bm0                IsDateCodeExpired

_bm0                IsDateCodeValid

_bm0                GetDateCodeStart

_bm0                GetDateCodeEnd

_bm0                InitDateCodeEx

 

 

Days Code

_bm0                DecDaysCode

_bm0                GetDaysCodeValue

_bm0                InitDaysCode

_bm0                IsDaysCodeExpired

_bm0                IsDaysCodeValid

 

Registration Code

_bm0                InitRegCode

_bm0                IsRegCodeExpired

_bm0                IsRegCodeValid

_bm0                IsRegCodeRegisteredTo

 

Serial Number Code

_bm0                GetSerialNumberCodeValue

_bm0                InitSerialNumberCode

_bm0                IsSerialNumberCodeExpired

_bm0                IsSerialNumberCodeValid

 

Special Code

_bm0                GetSpecialCodeValue

_bm0                InitSpecialCode

_bm0                IsSpecialCodeExpired

_bm0                IsSpecialCodeValid

 

Usage Code

_bm0                DecUsageCode

_bm0                GetUsageCodeValue

_bm0                InitUsageCode

_bm0                IsUsageCodeExpired

_bm0                IsUsageCodeValid

 

 

{$IFDEF Win16}

function GetDiskSerialNumber(Drive : AnsiChar) : LongInt;

{$ENDIF}

{$IFDEF LINUX}

function GetDiskSerialNumber(Drive : AnsiChar) : LongInt;

function MyHashElf(const Buf;  BufSize : LongInt) : LongInt;

{$ENDIF}

function Max(A, B : LongInt): LongInt;

function Min(A, B : LongInt) : LongInt;

procedure XorMem(var Mem1; const Mem2; Count : Cardinal);

function OgFormatDate(Value : TDateTime) : string;                     {!!.09}

 

 

{$IFDEF KYLIX}

function GetDriveType(drive:Integer): Integer;

function HiWord(I: DWORD):Word;

function CoCreateGuid(out guid: TGUID): HResult;

function timeGetTime: DWord;

{$ENDIF}

{$IFDEF FPC}

{$IFDEF LINUX}

function GetDriveType(drive:Integer): Integer;

function HiWord(I: DWORD):Word;

function CoCreateGuid(out guid: TGUID): HResult;

function timeGetTime: Cardinal;

{$ENDIF}

{$IFDEF FREEBSD}

function GetDriveType(drive:Integer): Integer;

function HiWord(I: DWORD):Word;

function CoCreateGuid(out guid: TGUID): HResult;

function timeGetTime: Cardinal;

{$ENDIF}

{$ENDIF}