BUG: C4003: Not Enough Parameters for SubclassWindow Macro (150076)
The information in this article applies to:
- Microsoft Visual C++ 1.0
- Microsoft Visual C++ 1.5
- Microsoft Visual C++ 1.51
- Microsoft Visual C++ 1.52
- Microsoft Visual C++ 1.52a
- Microsoft Visual C++ 2.0
- Microsoft Visual C++ 2.1
- Microsoft Visual C++ 2.2
- Microsoft Visual C++ 4.0
- Microsoft Visual C++ 4.1
- Microsoft Visual C++ 4.2
- Microsoft Visual C++, 32-bit Enterprise Edition 5.0
- Microsoft Visual C++, 32-bit Enterprise Edition 6.0
- Microsoft Visual C++, 32-bit Professional Edition 5.0
- Microsoft Visual C++, 32-bit Professional Edition 6.0
- Microsoft Visual C++, 32-bit Learning Edition 6.0
- Microsoft Visual C++ .NET (2003)
- Microsoft Visual C++ .NET (2002)
This article was previously published under Q150076 SYMPTOMS When compiling a Microsoft Foundation Class (MFC)
application that uses the Windowsx.h header file and calls
CWnd::SubclassWindow(), you may get the following error:
warning C4003: not enough actual parameters for macro 'SubclassWindow' error
C2059: syntax error : ')' CAUSE The Windowsx.h file is a header that includes message
cracker macros to help programmers write more portable Windows-based
applications. The header file contains a preprocessor macro named
SubclassWindow. The macro bears the same name as the CWnd::SubclassWindow()
member function. The macro has two parameters; the member function has only one
parameter. The preprocessor tries to expand the symbol SubclassWindow when it
is found. RESOLUTION You can un-define the macro as follows:
#undef SubclassWindow
STATUS Microsoft has confirmed this to be a bug in the Microsoft
products listed at the beginning of this article. REFERENCES Win32 SDK Books Online. MFC Class Library Reference.
Modification Type: | Major | Last Reviewed: | 9/18/2003 |
---|
Keywords: | kbBug kbCompiler kbCPPonly kberrmsg KB150076 |
---|
|