Jump to content

Visual Effects Performance In Registry


Recommended Posts

:hello: I'm new to the boards, so I'm not really sure if this has been posted yet. I tried searching the forums and didn't find anything this detailed about the registry locations for visual effects.

EDIT: Found Completely VisualEffects Detail and a work in progress by smc1979.

To access visual effects performance options normally under Windows XP, access System Properties through the Control Panel, go to the Advanced tab, then click the Settings button under Performance.

First off, I initially found most of these registry entries under HKEY_USERS\S-1-5-21-*****-500\, where the second part of this key is a unique identifier for the user. I suspect that this is used as the root for HKEY_CURRENT_USER, so I shall be using HKCU to refer to this location.

Here's how to choose which performance option to use:

;0 = Let Windows choose what's best for my computer
;1 = Adjust for best appearance
;2 = Adjust for best performance
;3 = Custom

Here's the locations for each visual effect, in no particular order. All values are set to enable the visual effect.

;Use visual styles on windows and buttons (0=off 1=on)

;Use common tasks in folders (0=off 1=on)

;Show translucent selection rectangle (0=off 1=on)

;Use drop shadows for icon labels on the desktop (0=off 1=on)

;Use a background image for each folder type (0=off 1=on)

;Slide taskbar buttons (0=off 1=on)

[HKCU\Control Panel\Desktop\WindowMetrics]
;Animate windows when minimizing and maximizing (0=off 1=on)

[HKCU\Control Panel\Desktop]
;Show window contents while dragging (0=off 1=on)

;Smooth edges of screen fonts (0=off 2=on)

;Smooth scroll list boxes
;Slide open combo boxes
;Fade or slide menus into view
;Show shadows under mouse pointer
;Fade or slide tooltips into view
;Fade out menu items after clicking
;Show shadows under menus
;(All off = 90,12,01,80   All on = 9e,3e,05,80)

This last entry deserves some elaboration. UserPreferencesMask uses a 4 byte entry to hold the values for 7 different visual effects, and probably a few other options. If we expand this 4 byte hex entry into binary, we get

1001ABC0 00D1EF10 00000G01 10000000

where bits A - G are used for the following visual effects using 0=off and 1=on

A = Smooth scroll list boxes

B = Slide open combo boxes

C = Fade or slide menus into view

D = Show shadows under mouse pointer

E = Fade or slide tooltips into view

F = Fade out menu items after clicking

G = Show shadows under menus

For example:

1001ABC0 00D1EF10 00000G01 10000000
10010000 00010010 00000001 10000000 = 90 12 01 80 (all off)
10011110 00111110 00000101 10000000 = 9e 3e 05 80 (all on)
10010000 00110010 00000101 10000000 = 90 32 05 80 (mouse and menu shadows)

I hope this helps. If I made any mistakes or if anyone knows what the other bits for the UserPreferencesMask are used for, please post and let me know.

Link to comment
Share on other sites

  • 2 weeks later...

Ehhm, does this work for Win SP2 as well? Because I am experiencing problems with setting the visual effects since SP1 Unattended. It worked for me after a long time of testing. And I have to say, this looks promising! Thanks in advance!

Link to comment
Share on other sites

  • 3 weeks later...

I obtained these results using fresh install of WinXP SP2 Pro. I exported the entire registry, tried changing the performance settings, then exported another copy of the registry to see where any changes had been made. These results only pertain to the current user. I tried setting these for the default user in the registry and they didn't seem to take.

Link to comment
Share on other sites

Desktop settings in the registry including bit masks have also been explained in detail in

Microsoft Windows XP Registry Guide

by Jerry Honeycutt, MS Press. Good reading if you can get hold of a copy.

Link to comment
Share on other sites

  • 17 years later...

I have made a batch file that will adjust visual effects for best performance which can be inserted into the $OEM$\$1\install folder with an appropriate entry under the GuiRunOnce section of winnt.sif.  If that does not work place it in $OEM$\$$\Temp and make a batch file in $OEM$\$1\install to place an entry in the RunOnce key to run visual_effects.bat from the %SystemRoot%\Temp folder.

When Windows runs for the first time not all the settings are applied until you log off.  The settings for "Use visual styles on windows and buttons" are not applied until you click the Apply button and the Themes service is activated, which obviously you cannot do in a batch file.  Therefore I logged all the relevant settings that are made when "Use visual styles on windows and buttons" is turned off, and included them in my batch file.  The only problem is that the reg.exe of XP/2003 does not support the QWORD data type used in some of the settings.  Is there an upgrade for reg.exe we can use for XP/2003?


Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    • No registered users viewing this page.

  • Create New...