程序以前是在xp+vc6下写的,现在搬到win7+vc2010下面了偶然在资源编辑器发现进度条变漂亮了
不过编译好了运行起来就变成这样了(字是我抹掉了)
后来在vc2010里面新建了个对话框工程,弄上进度条,发现在unicode模式下编译能出现第一种漂亮的进度条,在多字节下编译就出现第二种样子的。后来费了好大劲把原来工程调整了一番,终于能在unicode下编译过去,发现还是第二种~~请教一下,这个到底是怎么回事,怎么才能弄出第一种进度条

解决方案 »

  1.   

    记得好像是win7第一种,XP第二种,要想都第一种自绘下。
      

  2.   

    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