方法1:修改stdAfx.h中的代码
#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_IA64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' 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
方法2:采用.manifest文件修改界面风格
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
version="1.0.0.0"
processorArchitecture="X86"
name="Microsoft.Windows.dummy"
type="win32"/>
<description>Your app description here</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="X86"
publicKeyToken="6595b64144ccf1df"
language="*"/>
</dependentAssembly>
</dependency>
</assembly>
(2)如果是.dll工程,则在Resource.h中添加:
#define IDR_XXX 200
并在StdAfx.h中添加
#define ISOLATION_AWARE_ENABLED 100
(3)如果是.exe工程,则在Resource.h中添加:
#define IDR_XXX 100
针对VS2010 MFC应用中控件因字符集设置不同导致的外观差异,提供了两种解决方案:1) 修改stdAfx.h文件,通过预处理器指令和pragma comment链接器指令指定依赖的Windows Common Controls库版本。2) 使用外部.manifest文件来改变界面风格,确保所有控件统一显示。
5089

被折叠的 条评论
为什么被折叠?



