home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!gatech!wrdis01!aedc-vax.af.mil!fuller
- From: fuller@aedc-vax.af.mil
- Newsgroups: comp.os.ms-windows.programmer.misc
- Subject: Re: Note about Zortech C++ DLL bug
- Message-ID: <1992Jul29.122826.28@aedc-vax.af.mil>
- Date: 29 Jul 92 18:28:26 GMT
- References: <60719996@aedc-vax.af.mil> <187a8fa6@p1.f36.n245.z2.fidonet.org>
- Organization: Arnold Engineering Development Center
- Lines: 25
-
- In article <187a8fa6@p1.f36.n245.z2.fidonet.org>, Thomas_Hornschuh@softstream.fido.de (Thomas Hornschuh) writes:
- > f > The Zortech compiler version 3.0 release 4 has problems creating DLLs that
- > f > can be imported dynamically at Run-time. This is important because
- > f > this is the way that Visual Basic supports DLL calls. I have been working
- >
- > If you call LoadLibary self, you can call it just twice. The first time the DLL
- > ist loaded, but an invalid handle is returned (don't know why!). The second
- > time you get an valid handle. The Refcount is 2, so you need two FreeLibrary
- > calls (both with the handle from the second call).
- >
- > Unfortunatly in VB you can't control the way the DLL is loaded, so this
- > workaround does not fit.
- >
- > But the LoadLibrary of Zortech generated DLL's always returns a valid handle
- > when the DLL is in already loaded, either implicitly or with another
- > LoadLibrary. So you either call LoadLibrary from your Visual Basic Code before
- > VB does it, or if this is impossible, write a small loader program consisting
- > only of a LoadLibrary and waiting for a WM_QUIT Message.
-
- I played around with the compiler some more and found out that the problem is
- that Zortech creates DLLs that have a problem with run-time loading if there
- are lower case letters in the function names. If you name all of the functions
- that you want to call with upper case letters, it works fine. I told a guy
- at support about the problem and what my solution was. They were unaware of
- the problem. The fix will be out "real soon now". fine.
-