Calling DLL's from OI (None Specified)
At 25 MAY 1999 02:07:22PM Ken King wrote:
I am using Visual C++ 1.5 to write 16-Bit .DLL files for OI. Using the functions in the kernel I am trying to thunk to 32-Bit .DLL's I have a 16-Bit program written in VC++ 1.5 that thunks to 32bit .dll's – It works fine. When I try to make a .DLL file out of it, OI will run the 16 bit .dll file, but it fails on the thunking function LoadLibraryEx32W (The pointer that is returned is NULL). I would normally suspect the .DLL side for this problem, but Thunking is working fine when I call it from an external program. Has anyone thunked in OI before that could either lend a hand, or e-mail sample thunking code that you have working.
Thanks – [email protected]
At 25 MAY 1999 03:49PM Thomas Dunlop wrote:
Hi Ken:
Unfortunately, we do not provide support for thunking or other advanced Windows programming issues using C/C++. However, you might want to check out MSDN (search for known problems/limitations with that API call) or to get in touch with Carl Pates from Sprezzatura. I have seen him respond to issues of this nature in the past.
I didn't have any luck with finding anything on our site that would help in your particular situation.
Tom Dunlop
Revelation Software
At 26 MAY 1999 10:22AM Arjun VarmaRevelation wrote:
Ken, You can also find similar articles regarding this issue on our On-Line Discussion. Check the following thread, specifically:
[notag]Hi Ken,
When I've used the WOW functions in the past I've always used Delphi 1 to create the 16-bit DLL's ( although I've used C++ for other things like sub-classing )
I've had no problems so far with LoadLibraryEx32W. The code's really simple so I' can't think why it's refusing to load.
hinst:=LoadLibraryEx32W(lpstrLib, 0, 0 )
Regards,
[<A HREF="mailto:[email protected]" onMouseOver="window.status='Why not click here to send me Email?';return(true)">Carl Pates</A>]
[<A HREF="http://www.sprezzatura.com" onMouseOver="window.status='Why not click here to visit our web site?';return(true)">Sprezzatura Group</A>]
[<I>World Leaders in all things RevSoft</I>]
[<img src="http://www.sprezzatura.com/zz.gif">]
[<script language="javascript">function openNewPage () {window.location.href=(document.TOCNavigator.pageToGoTo.options[document.TOCNavigator.pageToGoTo.selectedIndex].value);document.TOCNavigator.pageToGoTo.selectedIndex="0";}end hiding from non-JS browsers –></script>] [<FORM ACTION "" METHOD=GET NAME="TOCNavigator" <SELECT NAME="pageToGoTo" SIZE=1 onChange="openNewPage()"> <OPTION>Pull down this menu to choose whereabouts on Sprezz site to go <OPTION VALUE="http://www.sprezzatura.com">Home Page <OPTION VALUE="http://www.sprezzatura.com/whatsnew.htm">What's New <OPTION VALUE="http://www.sprezzatura.com/senl.htm">SENL <OPTION VALUE="http://www.sprezzatura.com/patches.htm">Download S/LIST <OPTION VALUE="mailto:[email protected]">Send mail to support at Sprezzatura <OPTION VALUE="mailto:[email protected]">Send mail to sales at Sprezzatura </SELECT> </FORM>] [/notag] </QUOTE> —- === At 27 MAY 1999 10:30AM Cameron Purdy wrote: === <QUOTE>Is the DLL in the path or fully qualified? Try (just to test) copying the DLL into the Windows or Windows/System directory. Cameron Purdy Revelation Software </QUOTE> —- === At 28 MAY 1999 10:56AM Ken King wrote: === <QUOTE>I have exactly that string, but LoadLibraryEx32W is always returning a NULL pointer. I think I may have found a cause for it. The lack of an onload data segment in the 16-bit .dll may have been preventing me from loading literals into memory (This caused _fstrcpy to fail doing a simple copy "_fstrcpy(lpstr,"Hello World");" ) Unfortuanetly, the defaults for vc++ 1.5 are quite different than vc++ 5.0 and further, the functions simply fail, never reporting an error about the lack of memory space to load literals from the code. v. frustrating.. I am going to try thunking to 32bit .dll again sometime next week… </QUOTE> View this thread on the Works forum...