Microsoft KB Archive/169334

From BetaArchive Wiki
Knowledge Base


FIX: IRepos::Get_Name() Returns Error if Called on a Property

Article ID: 169334

Article Last Modified on 1/13/2001



APPLIES TO

  • Microsoft Visual Studio 97 Service Pack 3
  • Microsoft Visual Basic 5.0 Learning Edition
  • Microsoft Visual Basic 5.0 Professional Edition
  • Microsoft Visual Basic 5.0 Enterprise Edition



This article was previously published under Q169334

SYMPTOMS

IReposProperty::get_Name() and IReposProperty::get_type() return an error:

"Property does not exist"

if you call them on a property of an inherited interface.

STATUS

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

For additional information about the Visual Studio 97 Service Pack 1, please see the following article in the Microsoft Knowledge Base:

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


MORE INFORMATION

Steps to Reproduce:

  1. Create a TIM that has interface inheritance and properties on both interfaces. For example:

    Class1 implements interface IfaceDerived and IfaceDerived inherits from IfaceBase. IfaceDerived has property PropDerived and IfaceBase has PropBase.

  2. Get an object of type Class1.
  3. Query Interface for the IfaceDerived interface.
  4. Call get_Properties() on this interface and get the IReposProperties interface.
  5. Ask for the count of properties using get_Count() and it will return 2, because, through inheritance, IfaceDerived has two properties.
  6. Call get_Item(1) and get the first property. (This will be the property PropBase.)
  7. Call get_Name or get_Type on the property.

Expected:

It should return the name of the property.


Results:

Returns "Property does not exist."


Keywords: kberrmsg kbbug kbfix kbvbp500sp2fix kbvs97sp1fix kbvs97sp2fix kbvbp500sp1fix KB169334