Printing Landscape on Windows 2000
-
I need help trying to programmatically print in landscape mode use Windows 2000. The code below works on Windows 9x but not on Windows 2000:
...
printerDC.StartPage();DEVMODE dm;
memset(&dm, 0, sizeof(dm));
dm.dmSpecVersion = DM_SPECVERSION;
dm.dmSize = sizeof(DEVMODE);
dm.dmFields = DM_ORIENTATION;
dm.dmOrientation = DMORIENT_LANDSCAPE;printerDC.ResetDC(&dm);
...Under Windows 2000 the page is printed portait mode. I have looked in the MSDN, no help... Thanks in advance! :) Jonathan Craig www.mcw-tech.com
-
I need help trying to programmatically print in landscape mode use Windows 2000. The code below works on Windows 9x but not on Windows 2000:
...
printerDC.StartPage();DEVMODE dm;
memset(&dm, 0, sizeof(dm));
dm.dmSpecVersion = DM_SPECVERSION;
dm.dmSize = sizeof(DEVMODE);
dm.dmFields = DM_ORIENTATION;
dm.dmOrientation = DMORIENT_LANDSCAPE;printerDC.ResetDC(&dm);
...Under Windows 2000 the page is printed portait mode. I have looked in the MSDN, no help... Thanks in advance! :) Jonathan Craig www.mcw-tech.com
You don't want to do that. DEVMODE is a standard structure but there are cases where the printer driver needs additional space. You should get the existing DEVMODE and modify that in-place (or possibly copy that, including allocating any extra space). Steve S