BUG: Compile error message when you implement a class in a referenced COM library (316581)
The information in this article applies to:
- Microsoft Visual Basic 2005 Express Edition
- Microsoft Visual Basic .NET (2003)
- Microsoft Visual Basic .NET (2002)
This article was previously published under Q316581 SYMPTOMS When you implement a class in a referenced Component Object
Model (COM) library in Visual Basic .NET or in Visual Basic 2005, you receive the following compile
error message: ClassName must
implement 'Overridable Overloads Property
PropertyName As Object' for interface
ProjectName.ClassName'.
Implementing property must have matching 'ReadOnly'/'WriteOnly'
specifiers.
'PropertyName' cannot
implement PropertyName because there is no matching
property on interface 'ClassName'.
CAUSE This behavior occurs because a class in the COM library
exposes one or more public variant variables, or it exposes a public Property Let or Property Set procedure that passes arguments by reference. RESOLUTION To resolve this bug, rebuild the COM library so that it
passes arguments to property procedures by value instead of by reference, as in the following sample code: Public Property Let Data(ByVal strDataIn As String)
strData = strDataIn
End Property
STATUSMicrosoft has confirmed that this is a bug in the Microsoft products that are listed in the "Applies to" section.
Modification Type: | Major | Last Reviewed: | 2/16/2006 |
---|
Keywords: | kbvs2005swept kbvs2005applies kbvs2002sp1sweep kbbug kberrmsg kbnofix KB316581 |
---|
|