Breaking Changes (MFC)

Breaking changes in MFC.

Breaking Changes

Affected Class or Feature


CTime Class

The CTime class now accepts dates starting from 1/1/1900 C.E. instead of 1/1/1970 C.E.

Tab order of controls in MFC dialogs

The correct tab order of multiple controls in an MFC dialog is disturbed if an MFC ActiveX control is inserted in the tab order. This change corrects that problem.

For example, create an MFC dialog application that has an ActiveX control and several edit controls. Position the ActiveX control in the middle of the tab order of the edit controls. Start the application, click an edit control whose tab order is after the ActiveX control, then tab. Prior to this change, the focus went to the edit control following the ActiveX control instead of the next edit control in the tab order.

CFileDialog Class

Custom templates for the CFileDialog class cannot be automatically ported to Windows Vista. They are still usable, but will not have the additional functionality or looks of Windows Vista style dialogs.

CWnd Class and CFrameWnd Class

The CWnd::GetMenuBarInfo method was removed.

The CFrameWnd::GetMenuBarInfo method is now a non-virtual method. For more information, see GetMenuBarInfo Function in the Windows SDK.

MFC ISAPI support

MFC no longer supports building applications with the Internet Server Application Programming Interface (ISAPI). If you want to build an ISAPI application, call the ISAPI extensions directly.

Deprecated ANSI APIs

The ANSI versions of several MFC methods are deprecated. Use the Unicode versions of those methods in your future applications. For more information, see Build Requirements for Windows Vista Common Controls.

See Also


Changes in the Visual C++ 2005 Libraries

Other Resources

MFC Reference