Quickbooks 5 and printing
gerard.patel at asi.fr
Mon Apr 30 19:15:41 CDT 2001
At 09:44 AM 28/04/2001 -0500, you wrote:
>Okay, here are the traces. Here
>(ftp://sourceharvest.com/pub/wine_qb4.log.gz) is the QB4 trace. QB4
>The other (ftp://sourceharvest.com/pub/wine_qb5.log.gz) is the QB5 trace.
>QB5 printing doesn't work.
The 2 traces are showing the same problem : the 2 versions of your app
are trying to loadlibrary on the Wineps driver. This is not working
in both cases.
The difference comes from the app itself : QB4 is proceding anyway to
a call to CreateDC (that's the usual way of printing after all) and this
call succeeds - because Wine has been coded for this case- , while QB5
don't want to continue.
My impression is that QB5 is a more sophisticate application that is actually
*testing* the errors returned by the system.
Unfortunately, that is also breaking its capability of printing
I am not sure why this LoadLibrary fails (it returns 2, file not found).
I have done a quick and dirty LoadLibrary("WINEPS.DRV") in a
winelib application : it fails. LoadLibrary("WINEPS.DLL") succeeds.
So this is the problem it seems. LoadLibrary should be tweaked.
I think that the code to patch is in library/loader.c, line 96
/* check for .dll or .exe extension to remove */
if (ext && (!strcmp( ext, ".dll" ) || !strcmp( ext, ".exe" ))) p = ext
After the name problem is solved, the following problem is probably
loading a 32 bits builtin library from 16 bits code. I don't remember
clearly now (it's past 2 am for me) but the problem has already occured
for other dlls.
I think it was you who asked about the difference between 16 and 32
bits code; while you got a correct answer, there is also a first glance
trick, useful when in one application you have transitions between
16 and 32 bits code : the 16 bits calls to the Api are shown in uppercase,
the 32 bits are in lowercase.
More information about the wine-devel