FIX: Get Statement Not Working Correctly with Large UDT (171495)



The information in this article applies to:

  • Microsoft Visual Basic Control Creation Edition for Windows 5.0
  • Microsoft Visual Basic Learning Edition for Windows 5.0
  • Microsoft Visual Basic Professional Edition for Windows 5.0
  • Microsoft Visual Basic Enterprise Edition for Windows 5.0

This article was previously published under Q171495

SYMPTOMS

Reading string data using the Get statement into extremely large User Defined Types (UDTs) may cause a data mismatch.

CAUSE

There is an error in the Ansi/Unicode translation of string data in the UDT.

STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This bug has been fixed in Visual Studio 97 Service Pack 2.

For more information on the Visual Studio 97 Service Pack 2, please see the following article in the Microsoft Knowledge Base:

170365 INFO: Visual Studio 97 Service Packs - What, Where, and Why

For a list of the Visual Basic 5.0 bugs that were fixed in the Visual Studio 97 Service Pack 2, please see the following article in the Microsoft Knowledge Base:

171554 INFO: Visual Basic 5.0 Fixes in Visual Studio 97 Service Pack 2

MORE INFORMATION

If you have an extremely large UDT, reading valid data into it using the Get statement may be compromised due to an Ansi/Unicode translation error.

This error occurs when reading in the UDT and translating it from Ansi to Unicode.

In order for this bug to occur, the UDT is usually very large, most likely containing many nested levels and arrays.

Modification Type:MajorLast Reviewed:12/10/2003
Keywords:kbbug kbfix kbvbp500sp2fix kbVS97sp2fix KB171495