This is the mail archive of the cygwin@sources.redhat.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

dll loading in Win2k



I'm writing a COM add-in for MS Outlook in Visual Basic. This VB code will
load in .dll compiled with the latest cygwin tools with the -mno-cygwin
option. This cygwin dll is written in C, compiled with gcc and made a dll
by dllwrap.

When I build my app and run it in Win98 all is well. Outlook loads my COM
add-in at startup, and the COM add-in loads my mingw dll upon the first
invokation of a function in the dll. Consequently, the first invokation of
a function from that dll will also load in all the dll's it needs to run
like crtdll.dll, wsock32.dll, gmp202.dll and more. 

Clearly there is some mechanism in that allows code generated by dllwrap
to automatically load dll's that its target depends on.

When I build and run this app in Windows 2000 the dll made by dllwrap
fails to load the dll's it depends on. Naturally, the first call to
something like malloc causes a memory access exception and kills the app.
If fact, it happens to be a call to malloc that kills the app.

I've made executeables in Win2k that use the same set of native windows
dll's like crtdll.dll, wsock32.dll, etc except the dll that I made. Those
executeables work fine. The problem seems to be my dll's code to
implicitly load other native windows dll's.


Does anyone know how the implicit loading of dll's in Win2k could fail to
work?



Tim Reed



--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]