Class TAppInstance (unit AppCtrl)

Inherits from

TComponent

Constructors


constructor Create (AOwner : TComponent);



Functions

procedure Close;


destructor Destroy;


procedure Open;


procedure Refresh;


procedure CloseControlFile;


procedure DetectAbort (AInstance : TInstance) ;


procedure FindInstance;


function GetActive : Boolean;


function IsActive : Boolean;


procedure Loaded;


procedure LockControlFile;


procedure LockNextFreeRecord;

delete, to keep ControlFile small, but maybe not all Aborts are detected } // DeleteFile (FControlFile);

function LockRecord (nRecno : Integer) : Boolean;


procedure OpenControlFile;


procedure SetActive (Value : Boolean);


procedure SetControlFile (const Value : TFileName);


procedure SetMaxInstances (Value : Integer);


procedure SetMaxUsers (Value : Integer);


procedure SetUserName (const Value : TUserName);


procedure UnlockControlFile;


procedure UnlockRecord (nRecno : Integer);


procedure WriteInstance;


Properties

property Active : Boolean


property ControlFile : TFileName


property MaxInstances : Integer

in the network

property MaxUsers : Integer

with the same control-file

property UserName : TUserName

same control-file

property Instances : TStrings


property Users : TStrings


Events

event OnClose : TInstanceEvent


event OnDetectAbort : TInstanceEvent

Active is set to true

event OnMaxInstances : TInstanceEvent

if not assigned an exeption is raised

event OnMaxUsers : TInstanceEvent


event OnOpen : TInstanceEvent

closed correctly

Variables

FControlFile : TFileName;


FInstances : TStrings;


FMaxInstances : Integer;


FMaxUsers : Integer;


FOnClose : TInstanceEvent;


FOnDetectAbort : TInstanceEvent;


FOnMaxInstances : TInstanceEvent;


FOnMaxUsers : TInstanceEvent;


FOnOpen : TInstanceEvent;


FUsers : TStrings;


hControlFile : THandle;


lWantActivate : Boolean;


Recno : Integer;


rInstance : TInstance;



Constructors


constructor Create (AOwner : TComponent);


Functions


procedure Close;


destructor Destroy;


procedure Open;


procedure Refresh;


procedure CloseControlFile;


procedure DetectAbort (AInstance : TInstance) ;


procedure FindInstance;


function GetActive : Boolean;


function IsActive : Boolean;


procedure Loaded;


procedure LockControlFile;


procedure LockNextFreeRecord;

delete, to keep ControlFile small, but maybe not all Aborts are detected } // DeleteFile (FControlFile);


function LockRecord (nRecno : Integer) : Boolean;


procedure OpenControlFile;


procedure SetActive (Value : Boolean);


procedure SetControlFile (const Value : TFileName);


procedure SetMaxInstances (Value : Integer);


procedure SetMaxUsers (Value : Integer);


procedure SetUserName (const Value : TUserName);


procedure UnlockControlFile;


procedure UnlockRecord (nRecno : Integer);


procedure WriteInstance;


Properties


property Active : Boolean


property ControlFile : TFileName


property MaxInstances : Integer

in the network


property MaxUsers : Integer

with the same control-file


property UserName : TUserName

same control-file


property Instances : TStrings


property Users : TStrings


Events


event OnClose : TInstanceEvent


event OnDetectAbort : TInstanceEvent

Active is set to true


event OnMaxInstances : TInstanceEvent

if not assigned an exeption is raised


event OnMaxUsers : TInstanceEvent


event OnOpen : TInstanceEvent

closed correctly


Variables


FControlFile : TFileName;


FInstances : TStrings;


FMaxInstances : Integer;


FMaxUsers : Integer;


FOnClose : TInstanceEvent;


FOnDetectAbort : TInstanceEvent;


FOnMaxInstances : TInstanceEvent;


FOnMaxUsers : TInstanceEvent;


FOnOpen : TInstanceEvent;


FUsers : TStrings;


hControlFile : THandle;


lWantActivate : Boolean;


Recno : Integer;


rInstance : TInstance;