June 7th, 2012, 04:50 PM
Join Date: Jan 2006
Location: Carlsbad, CA
A Delphi DLL is a DLL.
An ActiveX or ocx is a special DLL (and can also be created in Delphi).
Stateless means that the DLL has no internal state.
OK. I know that might seem circular so let me explain more.
In your simple situation, it means that every call you make to the DLL is entirely self
contained and has no dependencies on any calls that have preceded it or on any code
that might have run when the DLL was first loaded.
Let us assume a document scanning DLL called scan.dll.
To scan you might have to make two calls:
Obviously, if you loaded a second copy of scan.dll (renamed to scan2.dll) and sent
LoadThisScanner('CANON'); to scan.dll and
Scan; to scan2.dll you will be in trouble.
That is one explanation of having state.