Newbie developer looking for pointers (re printing)

Carl Sopchak carl.sopchak at cegis123.com
Fri Apr 5 16:02:56 CST 2002


I've decided to try to fix a problem myself that I'm having printing from 
QuickBooks (partial page checks need to be landscape).  I've downloaded the 
source, updated it via CVS, and now I'm trying to figure out where the 
problem is.  I know where the problem is at the moment: ME! :-)  That is, I 
could use some pointers on where to look... 
 
I have no knowledge of the Win API, and I can't say that I'm a strong C 
programmer (although I've played with it for a while a few years ago).  
However, being a consultant for over 15 years, I've jumped into more 
difficult situations and got results in a reasonable period of time.  With a 
few helpful pointers, I don't think this should be any different. :-) 
 
I've looked around MSDN for a while, searching for printing API info with no 
luck (perhaps it's a lack of patients, perhaps its a poor search enging on 
top of a huge mass of information).  I've looked at the Wine source, have 
successfully watched my program trace through wineps.c (et al), and even made 
a slight mod to it to make sure that I would know that I was running modified 
code (which worked). 
 
I've also looked around winehq and codeweavers, in the wine developer's 
sections... 
 
Here's where my head's at:  It seems to me that I'm "too low" looking at 
wineps.c, but I can't figure out where else to look.  Using the cross 
reference on winehq, and looking at the "where used" for wineps.c, the trail 
"goes cold" after a level or two (still "too low").  I know the app is making 
the proper calls to the Win Printing API to set landscape mode when needed 
since the program works fine on an NT box.  I just don't know WHAT gets 
called to do this!  If I started there, I could trace down to whatever levels 
I need to to figure out what is currently going on, so I can figure out what 
needs to be changed... 
 
So here are my questions: 
 
- What APIs are called by programs to talk to the printing subsystem?  Is 
there a MS URL that gives an overview of this API? 
 
- What --debugmsg options can I use to trace programs through these API 
calls?  (+psdrv works for the routines in wineps/*.c; +gdi [am I on the right 
track?] seems to give a whole bunch of traces, none of which [well, maybe a 
few] seem relavent.) 
 
- What calls the PSDRV_ functions?  What's the --debugmsg option for it? 
 
- Is anyone willing to Mentor me?? (VERY big grin; flash the long eyelashes; 
etc.) 
 
I'd love to get this to work, and I'd be more than happy to supply the patch 
once it is working.  I'm also be willing to continue working on the printing 
in wine, and perhaps fix other bugs that I run across.  But in order for this 
to become reality, I sure could use some help up the learning curve!! 
 
Humble thanks, 
 
Carl



More information about the wine-devel mailing list