Microsoft KB Archive/172255
Article ID: 172255
Article Last Modified on 2/16/2005
- Microsoft Visual Basic 5.0 Professional Edition
- Microsoft Visual Basic 5.0 Enterprise Edition
This article was previously published under Q172255
Using the Set keyword when setting the value of a ListItem's SubItem results in a General Protection Fault.
The SubItems collection of the ListItem is designed to handle strings, not objects.
Do not use the Set keyword. Instead of code similar to:
Set ListItem.SubItems(1) = Text1
use the following code:
ListItem.SubItems(1) = Text1
where Text1 is a textbox object.
Microsoft has confirmed that this is a problem in the Microsoft products that are 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:
170366 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
Although the code listed above that uses the Set keyword is incorrect, it should not result in a General Protection Fault. Once Visual Studio 97 Service Pack 2 is installed, the Visual Basic correctly raises the "Type Mismatch" error.
Keywords: kbbug kbfix kbvbp500sp2fix kbvs97sp2fix KB172255