Article: Q139301
Product(s): Microsoft C Compiler
Version(s): 4.0,4.1,4.2
Operating System(s):
Keyword(s): kbMFC KbUIDesign kbVC400bug kbVC410bug kbVC420bug kbVC500fix kbCompGallery kbGrpDSMFCAT
Last Modified: 07-MAY-2001
-------------------------------------------------------------------------------
The information in this article applies to:
- Microsoft Visual C++, versions 4.0, 4.1, 4.2
-------------------------------------------------------------------------------
SYMPTOMS
========
When you insert a modeless property sheet from the Property Sheet component in
the Component Gallery into a CDocument-derived class or other non-CWnd derived
class, the compiler generates this error:
C2664:'Create' : cannot convert parameter 5 from 'class CDocDerivedClass
*const' to 'class CWnd *' (new behavior; please see help).
CAUSE
=====
The modeless property sheet component placed in an application includes a
CMiniFrameWnd-derived class that actually contains the modeless property sheet.
When using the component, the application calls Create() on the
CMiniFrameWnd-derived class. This Create() requires a CWnd* to its parent window
as its fifth argument. The code generated for your application passes 'this' to
the Create() call. CDocument is not derived from CWnd; therefore, passing the
'this' pointer from the CDocument into the CMiniFrame::Create() function causes
the compiler error.
RESOLUTION
==========
Place the property sheet component into a class that is derived from CWnd.
STATUS
======
Microsoft has confirmed this to be a bug in the Microsoft products listed at the
beginning of this article. The problem was corrected in Visual C++ version 5.0.
Additional query words: kbVC400bug
======================================================================
Keywords : kbMFC KbUIDesign kbVC400bug kbVC410bug kbVC420bug kbVC500fix kbCompGallery kbGrpDSMFCATL kbNoUpdate
Technology : kbVCsearch kbVC400 kbAudDeveloper kbVC410 kbVC420
Version : :4.0,4.1,4.2
Issue type : kbbug
Solution Type : kbfix
=============================================================================