FIX: ClassWizard Misspells CPropertyPage in OnFinalRelease()
Article ID: 141346
Article Last Modified on 11/18/2003
APPLIES TO
- The ClassWizard, when used with:
- Microsoft Visual C++ 4.0 Professional Edition
- Microsoft Visual C++ 5.0 Learning Edition
This article was previously published under Q141346
SYMPTOMS
Adding a CPropertyPage-derived class via ClassWizard and selecting OLE
Automation Support causes the CPropertyPage::OnFinalRelease() member
function to be automatically overridden. The overridden version calls the
base class OnFinalRelease(). However, ClassWizard incorrectly spells the
base class call. Specifically, the 't' in CPropertyPage is missing.
Attempting to compile this class results in the following error message:
error C2653: 'CProperyPage' : is not a class or namespace name
RESOLUTION
To work around this problem, add the missing 't' to the base class call of
OnFinalRelease(), as in this example:
void CTestPage::OnFinalRelease()
{
// When the last reference for an automation object is released
// OnFinalRelease is called. The base class automatically
// deletes the object. Add any additional cleanup required for your
// object before calling the base class.
CPropertyPage::OnFinalRelease();
}
STATUS
Microsoft has confirmed this to be a bug in the Microsoft products
listed at the beginning of this article. This bug was corrected in
Visual C++ 4.1.
Additional query words: kbVC400bug 4.00 4.10
Keywords: kbbug kbfix kbnoupdate kbvc410fix kbwizard KB141346