[fpc-pascal] dll with windows impossible???
Michael Van Canneyt
michael at freepascal.org
Wed Jan 24 23:43:14 CET 2007
On Wed, 24 Jan 2007, Michel Meunier wrote:
> Michael Van Canneyt a écrit :
> > On Wed, 24 Jan 2007, Michel Meunier wrote:
> >
> > [cut code]
> >
> > > xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> > > and IT DOESN'T WORK, why? It is exactly the same code!
> > > More and more I think I am going to translate my code in C, because FPC
> > > seems
> > > unable to manage properly dll library.
> > >
> >
> > It has nothing to do with FPC.
> >
> > 1. Compile the DLL without debug info.
> > (lazarus compiles it by default with debug info included. Disable that)
> >
> it's the case
> > 2. ALWAYS specify the complete path to the DLL. Do NOT assume that
> > the program is started with as the current directory the program
> > directory. This is a common mistake.
> >
> >
> Ok, I have tried, and the problem is the same :-(
1. What is the return value of LoadLibrary ? Have you checked it ?
2. If it is <>0 immediatly get the last error: raiselastoserror.
This should give you at least a hint why windows thinks it can't load your library.
3. Did you specify $APPTYPE GUI in the library as well ?
If not, do so. Otherwise the library will try to initialize the terminal,
when it cannot: there is none, since the loading program does not have one!
4. You can also try vice versa: specify apptype console in your GUI program.
The GUI will still run, but in addition a terminal will be opened, allowing
the library to initialize it.
Can you test all this, please ?
Michael.
More information about the fpc-pascal
mailing list