|
Hi, The lStructSize needs to be filled with the size of the structure itself. Allocate it like you have, but then set that member with the proper size. You may want other things set so you might want to look at google for "PRINTDLGEX Structure site:microsoft.com". You should find the explanation of all the members of the structure PRINTDLGEX. If you have any questions about how to fill any of them just ask, I'd be glad to help. Mike -----Original Message----- From: wdsci-l-bounces@xxxxxxxxxxxx [mailto:wdsci-l-bounces@xxxxxxxxxxxx] On Behalf Of Kurt Anderson Sent: Thursday, March 29, 2007 8:57 AM To: Websphere Development Studio Client for iSeries Subject: Re: [WDSCI-L] VARPG Window API call - PrintDlgEx Tom - I'm trying to get newsgroup access. At the moment I can only post through Google (which the general newsgroup won't see). Mike - Looks like you've lead me in the right direction, although I really can't find any documentation on those functions. I keep getting the E_INVALIDARG result - which seems odd since the only parameter I'm passing is a pointer. I'm allocating the data structure before I make the call, but I'm wondering if I'm supposed to be initializing some fields or something. Here's my data structure: D pPrintDialogDS S * D PrintDialogDS DS Based( pPrintDialogDS ) Qualified D lStructSize 10u 0 D hWndOwner 10u 0 D hDevMode 10u 0 D hDevNames 10u 0 D hDC 10u 0 D Flags 10u 0 D Flags2 10u 0 D ExclusionFlags... D 10u 0 D nPageRanges 10u 0 D nMaxPageRanges... D 10u 0 D lpPageRanges * D nMinPage 10u 0 D nMaxPage 10u 0 D nCopies 10u 0 D hInstance 10u 0 D lpPrintTemplateName... D * D lpCallBack * D nPropertyPages... D 10u 0 D lphPropertyPages... D * D nStartPage 10u 0 D dwResultAction... D 10u 0 And this is how I'm allocating it: pPrintDialogDS = %alloc( %size( PrintDialogDS ) ); Do I need to allocate the subfield pointers? Kurt Anderson Application Developer Highsmith Inc -----Original Message----- From: wdsci-l-bounces@xxxxxxxxxxxx [mailto:wdsci-l-bounces@xxxxxxxxxxxx] On Behalf Of Mike Bush Sent: Wednesday, March 28, 2007 10:35 PM To: 'Websphere Development Studio Client for iSeries' Subject: Re: [WDSCI-L] VARPG Window API call - PrintDlgEx The export is actually either PrintDlgExA or PrintDlgExW depending if you are using ascii or Unicode. The normal Win32 SDK in C/C++ will fix this up for you at compile time via a #define. Hope this helps. Mike -----Original Message----- From: wdsci-l-bounces@xxxxxxxxxxxx [mailto:wdsci-l-bounces@xxxxxxxxxxxx] On Behalf Of qsrvbas@xxxxxxxxxxxx Sent: Wednesday, March 28, 2007 10:28 PM To: wdsci-l@xxxxxxxxxxxx Subject: Re: [WDSCI-L] VARPG Window API call - PrintDlgEx wdsci-l-request@xxxxxxxxxxxx wrote:
4. Re: VARPG Window API call - PrintDlgEx (Kurt Anderson) Ok, having issues here. First I was looking into PrintDlg, but realized that for Windows 2000 (which is what we're on) I should be using PrintDlgEx - http://msdn2.microsoft.com/en-us/library/ms646942.aspx When I get to the print screen action, I get the following error: 0211
Error occurred while calling program or procedure PrintDlgEx.
Kurt: At this point, I think your best choice is to ask on the ibm.software.varpg newsgroup on the news.software.ibm.com news server. I was right at my limit with the PrintWindow function. Going on actually to obtain the device context...? Yeah, right. As if. <g> When I was actively trying to do anything like what you're trying, I was using OS/2! But if you find the right technique, I'd really love to hear about it. Tom Liotta
My prototype: * Display the Print Dialog Window D PrintDlgEx PR 10u 0 ExtProc('PrintDlgEx') D dll('comdlg32.dll') D LinkAge(*StdCall) D pPrintDS * Value My call (gresultUns = 10u 0): gResultUns = PrintDlgEx( pPrintDialogDS ); I've tried changing the case on ComDlg32.dll, but it doesn't seem to matter. I've verified that comdlg.dll is in C:\WinNT\System32, and that directory is in my PATH.
-- Tom Liotta The PowerTech Group, Inc. 19426 68th Avenue South Kent, WA 98032 Phone 253-872-7788 x313 253-479-1416 Fax 253-872-7904 http://www.powertech.com -- This is the Websphere Development Studio Client for iSeries (WDSCI-L) mailing list To post a message email: WDSCI-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/mailman/listinfo/wdsci-l or email: WDSCI-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/wdsci-l. -- This is the Websphere Development Studio Client for iSeries (WDSCI-L) mailing list To post a message email: WDSCI-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/mailman/listinfo/wdsci-l or email: WDSCI-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/wdsci-l.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.