I'm looking for an application which would let me save settings across several control panels in Windows XP.
April 28, 2004 9:20 AM   Subscribe

I'm looking for an application which would let me save settings across several control panels in Windows XP. I'd be willing to pay a reasonable amount. [Example inside]

For example, I might like to have one group of settings called "Home" which would have the sound volume at 1/2 maximum, the marquee screensaver (reading "AskMe Rocks!") set to come on after 5 minutes of inactivity, a certain screen brightness; and another called, say, "Library" which would have the sound muted, the starfield screensaver coming on after 2 minutes of inactivity, and a different level for screen brightness. I'd like to be able to somehow save these groups of settings across various control panels and easily switch from one group to another, without having to go into each individual control panel and make changes there. Currently, I'm doing this 2-3 times a day and it's getting annoying going into 3 or 4 different control panels to make the changes I want.
posted by DevilsAdvocate to Computers & Internet (8 answers total)
 
This is just a guess off the top of my head, but you might try creating two user accounts for the different locations. I don't know much about it, but windows might keep track of at least some of those settings on a per-user basis. The screen saver, at least, is probably a per-user setting.
posted by GeekAnimator at 9:49 AM on April 28, 2004


If you can nail down the appropriate registry keys, you could export them to a .REG file for each setting group. To switch setting groups, all you'd have to do is load the appropriate REG file. It would take a little legwork to set up, but if you're comfortable fiddling with the registry (which most Windows users really should be, these days; it's not any more dangerous than access to the filesystem is) it's pretty straightforward.
posted by majick at 10:52 AM on April 28, 2004


Response by poster: GA: I don't want to create separate users, because that invokes a lot of other per-user settings (IE cookies, various program settings) that I don't want to change.

majick: I'm not real comfortable fiddling with the registry, but I'm willing to give it a try. However--and admittedly, I happen to be sitting at a Win2000 machine at the moment, not WinXP which is what I'm really interested in, so it's Win2000 that I'm testing this on--it doesn't seem to be working like that. For example:
  • My desktop background is set to "Sandstone", as it usually is
  • run the registry editor
  • Find the HKEY_CURRENT_USER\Control Panel branch
  • save this as test1.reg
  • close the registry editor
  • Use the Display Properties Control Panel to change the background to "Prairie Wind"
  • run the registry editor
  • Find the HKEY_CURRENT_USER\Control Panel branch
  • save this as test2.reg
  • close the registry editor
  • Confirm that test1.reg and test2.reg are different; the former includes the line "Wallpaper"="C:\\WINNT\\Sandstone.bmp" while the latter has "Wallpaper"="C:\\WINNT\\Prairie Wind.bmp"
  • click on test1.reg. "Are you sure you want to add....?" Yes. "Information in... has been successfully entered into the registry." OK. However, my desktop wallpaper has not changed back to Sandstone, but remains Prairie Wind. Yet, if I go to the Display Properties Control Panel, it's telling me that my current wallpaper is Sandstone! If I click something other than Sandstone then click back to Sandstone in the Control Panel, then click OK, it changes it to Sandstone, but running the .reg file did not change it (although the control panel thinks it did).
Like I said, I'm pretty much a novice at mucking about in the registry, so if I'm missing something obvious, please use small words.
posted by DevilsAdvocate at 12:33 PM on April 28, 2004


regarding the registry scenario you outlined: Windows only looks stuff up in the registery when it needs to (usually). It doesn't check every second to see if the entry for desktop background has changed. You might be able to get it to notice the new entry by clicking on the desktop, then hitting F5, which'll refresh it, but you may have to reboot the machine to get it to notice.

props to majick, though. I hadn't thought about the registery. good idea.
posted by GeekAnimator at 1:14 PM on April 28, 2004


Muting and volume alteration depend on your audio hardware. You can get a command line program called setvol.exe that simplifies that issue. Copy it to your C:\WINDOWS directory.

Using the 'REG' command to alter the registry in windows avoids the confirmation prompts that you would otherwise get from clicking a .reg file, so we'll use it so that you simply have to double-click a batch file on your desktop (or in your quicklaunch) to switch modes.

Make two files on your desktop, the first one being "library.bat" and add the following lines to it:

@ECHO OFF
C:\WINDOWS\setvol.exe 0
REG ADD "HKCU\Control Panel\Desktop" /f /v SCRNSAVE.EXE /t REG_SZ /d C:\WINDOWS\System32\ssstars.scr
REG ADD "HKCU\Control Panel\Desktop" /f /v ScreenSaveTimeOut /t REG_SZ /d 120
REG ADD "HKCU\Software\Policies\Microsoft\Windows\Control Panel\Desktop" /f /v ScreenSaveTimeOut /t REG_SZ /d 120


Also make a "home.bat" file on your desktop and add:

@ECHO OFF
C:\WINDOWS\setvol.exe 50
REG ADD "HKCU\Control Panel\Desktop" /f /v SCRNSAVE.EXE /t REG_SZ /d C:\WINDOWS\System32\ssmarque.scr
REG ADD "HKCU\Control Panel\Desktop" /f /v ScreenSaveTimeOut /t REG_SZ /d 300
REG ADD "HKCU\Control Panel\Screen Saver.Marquee" /f /v Text /t REG_SZ /d "AskMe Rocks!"
REG ADD "HKCU\Software\Policies\Microsoft\Windows\Control Panel\Desktop" /f /v ScreenSaveTimeOut /t REG_SZ /d 300


All you need to do now is activate those batch files and it will automatically switch between screen savers and volume modes for you.
If you want to know what the REG command does in more detail open a command prompt and type REG /?
posted by snarfodox at 2:23 PM on April 28, 2004


I don't know how well my proposed solution will actually work. Wallpaper -- along with several of the other settings you're hoping to switch around -- is a special case. You have to tell Explorer you've changed the registry. I'm not certain what the mechanism is (probably something awful like a DDE message), but you can kill EXPLORER.EXE and let it respawn to see if that works.

Screen brightness is going to be ugly. Windows doesn't set that, and usually there isn't even a control panel for it anyways, since it's up to ACPI to set that stuff.

Sound volume isn't driven by registry setting; the registry is used to record the current state of the hardware, but doesn't set it. If you work out where mixer evels are stored, you could probably get them to apply on next login, when the volume control starts up.

Changing the screensaver and timeout, though, ought to work just jim dandy!
posted by majick at 2:26 PM on April 28, 2004


If you want to do more than your initial question detailed you might need to comment again if you can't locate the appropriate registry entry points.
For power management choices the easiest way to handle it is to preconfigure a Power Scheme and use 'Save As' in the Power Options control panel applet to create a new scheme. You can then call on these schemes as desired.

Make your first scheme active in the drop-down box and click 'Apply' or 'OK', then copy/paste the following line into a command prompt:

REG QUERY "HKCU\Control Panel\PowerCfg" /v CurrentPowerPolicy

You will get an output where the number at the very end of the line is what Windows uses to identify the power configuration scheme that you are currently using.
You can then use the Power Options control panel applet again to swap to a different power scheme (make sure it becomes active via 'Apply' or 'OK') and use the command prompt line above a second time to see which different number the new scheme has been assigned in the registry.
To automatically switch between power configurations you could then add a line to one of the batch files I talked about above such as:

REG ADD "HKCU\Control Panel\PowerCfg" /f /v CurrentPowerPolicy /t REG_SZ /d 3

where the final number on the line is the number of the power scheme that you want to work with (in this case power scheme #3).
posted by snarfodox at 10:48 PM on April 28, 2004


Best answer: Screen brightness is controlled by a control panel on my computer, but the setting doesn't seem to be saved in the registry, as far as I can tell. And the fact that some registry changes don't take effect without additional actions (e.g., the wallpaper) would make the registry changes a partial solution at best.

Actually, I think I've found what I need in Macro Express. (When I had pre-googled this, "macro" didn't occur to me as a search term. Once I came up with that, I was able to find what I was looking for.)

Nonetheless, thanks for the help. If nothing else, I learned a few things about the registry.
posted by DevilsAdvocate at 12:06 AM on April 29, 2004


« Older hardware/software to transfer VHS to DVD   |   Recommendations for a free POP email account? Newer »
This thread is closed to new comments.