Microsoft KB Archive/241481

= BUG: Internal Protection Fault When Using Format Function =

Article ID: 241481

Article Last Modified on 5/8/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 Q241481



SYMPTOMS
If you use the Format function to format a numeric character sequence, and include a format sequence that includes a numeric value to be used in the Null section of the format, you may get this error:

The instruction at "0x65396ac3" referenced memory at "0x00000028". The memory could not be "read"

NOTE: The exact memory locations may vary from system to system.



RESOLUTION
To work around this problem, you need to escape all of the characters in the fourth section of the numeric format. For example, instead of: format$(Null,"#,##0.00;;;0.00") you should do: format$(Null,"#,##0.00;;;\0\.\0\0")



STATUS
Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.



Steps to Reproduce Behavior
 Start a new Standard EXE project. Form1 is created by default. Add a Command Button to the form. It is Command1.  Add the following code to the form: Private Sub Command1_Click Msgbox format$(Null,"#,##0.00;;;0.00") End Sub  Run the Code. When you press Command1, you should get an error that says:

The instruction at "0x65396ac3" referenced memory at "0x00000028". The memory could not be "read".

NOTE: The exact memory locations may vary from system to system.

