The VB6Printer object is actually a wrapper around the “real” VB6’s Printer object. This approach ensures that the printed output from the converted VB.NET is virtually identical to the one produced by the original VB6 application.
The only feature that the VB6Printer doesn’t handle correctly is landscape mode printing. Any assignment to the Printer.Orientation property is simply ignored and all output occurs in portrait mode.
There are no known workarounds for this bug.
- You set the printer in landscape mode in the Printer Properties dialog box, from Windows Start menu
- If you need to change the printer orientation during the application lifetime, you should replace any reference to the Printer6 object with the Printer object offered by Microsoft VB Power Pack library.
The VB Power Pack Printer object exposes most of the properties and methods as the VB6 Printer, but a few ones are lacking (for example hDC), therefore before adopting this library we recommend that you check that all the members you need are available.