Error loading DLL. Please help.

Gunther Ebert gunther.ebert@ixos-leipzig.de
Wed Oct 22 23:18:00 GMT 1997


Hi,

I have no idea why LoadLibrary doesn't like
gcc-created dlls (since importing via import table works), 
but if you follow the hints described below you may probably 
get closer to the cause of the problem.


Michael Cherkassoff wrote:
> 
> Hi,
> 
> I am trying to load .DLL with the following program:
> ----------- main.c ----------------
> #include <windows.h>
> 
> int main()
> {
>     HINSTANCE hDLL;
> 
>     hDLL = LoadLibrary("libfoo.dll");
>     if (hDLL == NULL)
>       {
>       unsigned int errorCode;
>       printf("Error");
>       errorCode = GetLastError();

Where do you think the last error comes from? LoadLibrary? printf?
Since printf performs some Win32 API calls internally it is very likely
that the error code which was set by LoadLibrary gets overridden. If you
want the error code which a particular function sets please call GetLastError
immediately after that function.


>       printf (" code is %d\n",errorCode);
>       }
>     else printf ("Success\n");
> }
> --------------------------------------------------
> 
> I get the message:
> 
> Error code is 0
> 
> if libfoo.dll is relocatable and
> 
> Error code is 11
> 
> if libfoo.dll is non-relocatable.
> 

net helpmsg 11

An attempt was made to load a program with an
incorrect format.


> I create my libfoo.dll using Fergus' Henderson Makefile.DLLs
> and it works perfectly for both relocatable and non-relocatable
> examples of calling functions (not loading libraries).
> 
> Any ideas why loading libraries doesn't work and how to
> make it work?
> 

Maybe there is still a bug in ld, you will have to wait until someone
fixes it or fix it yourself.


> (I care mostly about the relocatable libraries)
> 
> I am using b18 with the most recent Coolview.
> 
> Thanks,
> Michael.
> ------------------------------------------------------------
> Michael Cherkassoff  (mcherk@geog.ubc.ca)
> Department of Geography,                 Tel: (604) 822-2663
> University of British Columbia, B.C.     Fax: (604) 822-6150
> -
> For help on using this list (especially unsubscribing), send a message to
> "gnu-win32-request@cygnus.com" with one line of text: "help".

-- 

Gunther Ebert
iXOS Anwendungs-Software GmbH
Angerstrasse 40-42
D-04177 Leipzig

Phone : +49 341 48503-0
Fax   : +49 341 48503-99
E-mail: mailto:gunther.ebert@ixos-leipzig.de
www   : http://www.ixos-leipzig.de
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".



More information about the Cygwin mailing list