Microsoft KB Archive/169303

From BetaArchive Wiki
< Microsoft KB Archive
Revision as of 11:29, 21 July 2020 by X010 (talk | contribs) (Text replacement - "&" to "&")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Knowledge Base


FIX: Get_Item() Doesn't Find Property Defined on Ancestor Iface

Article ID: 169303

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 Q169303

SYMPTOMS

IReposProperties::get_item does not always find property defined on an ancestor 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 an interface hierarchy. For example, I1 -> I2 -> I3.
  2. Create a propertydef with name "prop1" on I1.
  3. Create a class that implements only I3.
  4. Create an Instance of Class C.
  5. QI, "QueryInterface," for "C's" I3 Interface.
  6. I->get_Properties(&pIPropCol).
  7. plPropCol->get_Item("Prop1", ....).

Expected result:

  • Should return a property object which contains the dispid of this property and the value of Prop1.

Actual result:

  • Returns a Bogus property object containing invalid dispid.


Keywords: kbbug kbfix kbvbp500sp2fix kbvs97sp1fix kbvs97sp2fix kbvbp500sp1fix KB169303