TZNativeLibraryLoader Class Reference

Implements a loader for native library. More...

Inheritance diagram for TZNativeLibraryLoader:

TZMySQLNativeLibraryLoader TZMySQLNativeLibraryLoader TZMySQLNativeLibraryLoader TZMySQLNativeLibraryLoader TZMySQLNativeLibraryLoader TZSybaseNativeLibraryLoader

List of all members.

Public Member Functions

Boolean Load ()
 Loads a library module.
 LoadIfNeeded ()
 Loads a library if it was not previously loaded.
 TZNativeLibraryLoader (string *Locations)
 Creates this loader class and assignes main properties.
 ~TZNativeLibraryLoader ()
 Destroys the library and cleanups the memory.

Public Attributes

LongWord Handle
Boolean Loaded

Protected Member Functions

 FreeNativeLibrary ()
 Frees a previously loaded library.
Pointer GetAddress (PChar ProcName)
 Gets a procedure address from the loaded library by its name.
Boolean LoadNativeLibrary ()
 Loads a library module and initializes the handle.

Private Attributes

LongWord FHandle
Boolean FLoaded
TStringDynArray FLocations


Detailed Description

Implements a loader for native library.

Definition at line 70 of file ZPlainLoader.pas.


Constructor & Destructor Documentation

TZNativeLibraryLoader::TZNativeLibraryLoader ( string *  Locations  ) 

Creates this loader class and assignes main properties.

Parameters:
Locations locations of native library on windows platform.

Definition at line 142 of file ZPlainLoader.pas.

TZNativeLibraryLoader::~TZNativeLibraryLoader (  ) 

Destroys the library and cleanups the memory.

Definition at line 165 of file ZPlainLoader.pas.


Member Function Documentation

TZNativeLibraryLoader::FreeNativeLibrary (  )  [protected]

Frees a previously loaded library.

Reimplemented in TZSybaseNativeLibraryLoader.

Definition at line 257 of file ZPlainLoader.pas.

Pointer TZNativeLibraryLoader::GetAddress ( PChar  ProcName  )  [protected]

Gets a procedure address from the loaded library by its name.

Parameters:
ProcName a name of the procedure.
Returns:
a procedure address.

Definition at line 273 of file ZPlainLoader.pas.

Boolean TZNativeLibraryLoader::Load (  ) 

Loads a library module.

Returns:
True if library was successfully loaded.

Reimplemented in TZSybaseNativeLibraryLoader, TZMySQLNativeLibraryLoader, TZMySQLNativeLibraryLoader, TZMySQLNativeLibraryLoader, TZMySQLNativeLibraryLoader, and TZMySQLNativeLibraryLoader.

Definition at line 179 of file ZPlainLoader.pas.

TZNativeLibraryLoader::LoadIfNeeded (  ) 

Loads a library if it was not previously loaded.

Definition at line 190 of file ZPlainLoader.pas.

Boolean TZNativeLibraryLoader::LoadNativeLibrary (  )  [protected]

Loads a library module and initializes the handle.

Returns:
True is library was successfully loaded.

Definition at line 203 of file ZPlainLoader.pas.


Member Data Documentation

LongWord TZNativeLibraryLoader::FHandle [private]

Definition at line 77 of file ZPlainLoader.pas.

Boolean TZNativeLibraryLoader::FLoaded [private]

Definition at line 79 of file ZPlainLoader.pas.

TStringDynArray TZNativeLibraryLoader::FLocations [private]

Definition at line 75 of file ZPlainLoader.pas.

See also:
FHandle For reading

FHandle For writing

Definition at line 106 of file ZPlainLoader.pas.

See also:
FLoaded For reading

FLoaded For writing

Definition at line 113 of file ZPlainLoader.pas.


The documentation for this class was generated from the following file:

Generated on Wed Dec 30 08:42:54 2009 for zeoslib by  doxygen 1.5.7.1