Microsoft KB Archive/191215

= BUG: Print Method Does Not Work Within a With-Block =

Article ID: 191215

Article Last Modified on 5/12/2003

-

APPLIES TO


 * Microsoft Visual Basic 6.0 Learning Edition
 * Microsoft Visual Basic 6.0 Professional Edition
 * Microsoft Visual Basic 6.0 Enterprise Edition

-



This article was previously published under Q191215



SYMPTOMS
In Visual Basic, although the Print method exists on the Printer and Form objects, it does not work within a With-block. The Print method is also not listed in the Object Browser.

When you try to invoke the Print statement within a With-block, the following error occurs when you run the program:

Compile error: Method or data object not found



CAUSE
The problem arises because Visual Basic is not parsing the Print identifier within the With statement correctly.



RESOLUTION
Remove the Print method from the With-block.



STATUS
Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. We are researching this bug and will post new information here in the Microsoft Knowledge Base as it becomes available.



Steps to Reproduce Behavior
 Create a new Standard EXE project in Visual Basic. Form1 is created by default.  Place one CommandBbutton on Form1 and paste the following code into the code window of Form1: Private Sub Command1_Click

Printer.CurrentX = Printer.ScaleWidth / 2 Printer.CurrentY = Printer.ScaleHeight / 2 Printer.Print "Test" ' this works Printer.EndDoc

With Printer .CurrentX = Printer.ScaleWidth / 2 .CurrentY = Printer.ScaleHeight / 2 .Print "Test"     ' this does not work .EndDoc End With

End Sub

 Press F5 to run the program.

RESULTS: The following error message appears:

Compile error: Method or data object not found

Keywords: kberrmsg kbbug kbpending kbcode kbcompiler KB191215

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.