Visual studio 2008 将VS6 MFC对话应用程序的外观升级到VS2008

Visual studio 2008 将VS6 MFC对话应用程序的外观升级到VS2008,visual-studio-2008,mfc,Visual Studio 2008,Mfc,我正在将VS6 MFC对话应用程序更新为VS2008。更新代码很容易,但是对话框仍然有老式的VS6外观。例如,分组框具有方形边缘,并且为深灰色。而不是VS2008应用程序组框的圆角和浅灰色 如何强制我的应用程序使用更现代的VS2008 MFC对话框应用程序?一个新的MFC项目将在stdafx.h中添加以下内容: // Define manifest directives to match platform #ifdef _UNICODE #if defined _M_IX86 #prag

我正在将VS6 MFC对话应用程序更新为VS2008。更新代码很容易,但是对话框仍然有老式的VS6外观。例如,分组框具有方形边缘,并且为深灰色。而不是VS2008应用程序组框的圆角和浅灰色


如何强制我的应用程序使用更现代的VS2008 MFC对话框应用程序?

一个新的MFC项目将在stdafx.h中添加以下内容:

// Define manifest directives to match platform
#ifdef _UNICODE
#if defined _M_IX86
    #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_X64
    #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#else
    #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
#endif
#endif
我还将以下内容添加到我的项目中,以明确地链接到UXTHEME.LIB,其中包含用于添加主题支持的基本控件子类:

#ifdef _UXTHEME_H_
#pragma message( "Including uxtheme.lib for linking" )
#pragma comment(lib, "uxtheme.lib")
#endif

看看这个线程,告诉我们它是否解决了您的问题:或者这个:将应用程序编译为非unicode应用程序也可能是一个问题:请参阅问题的第二个答案。@Mark,谢谢,这就是我要找的!