HI. I'm writing an MFC app and trying to use visual styles. I added the manifest file with the various lines, including:
[...] name="Microsoft.Windows.Common-Controls" version="6.0.0.0" [...]My problem is that although this caused the application to render correctly in testing (e.g.: white menus), when I run the application on a machine that has XP, but not VS2005, it renders in the old style (e.g: grey menus).
Anyone know what is causing this
Thanks!
edit: I have the MFC libs linked in to the app - not using the shared DLL.

MFC displays XP visual style only when VS2005 installed
CSFDeveloper
No! And I am happy that the user has control over this feature :-)
You have to live with the settings the user provide to you!
yanivoroz
I'm sorry but you must be confusing Visual Styles with something else - Visual Styles have no effect whatsoever on menus when themes are enabled in the OS. Visual Styles manifest only has effect on controls such as buttons, edit controls, etc.
You should look to your code to see what is causing the menus to be drawn in a grey style. When OS theming is enabled, XP menus are always white, regardless of whether Visual Styles manifest (comctl32.dll version 6.0) is in effect.
Bochur
FYI. This was being caused by the target machine being set for "Window Classis style" under the video "Appearance" tab. This caused my app to also render in "classic style".
Is there a way to make my app render in XP style regardless of how the user has configured windows I ask because is very hard to track active tabs in "classic style", and my app has a lot of tabs.
Thanks.