Resolution Changer

I originally wrote this application for my children because they have programs that require 640×480 with 256 colors or 800×600 with 32-bit color or some other combination. I didn’t expect my (then) 4-year-old to be able to change Windows display settings, so I wrote this program to do it automatically. Resolution Changer can change the display resolution, run a program, then restore the original settings.
Resolution Changer allows you to change your desktop width, height, color depth, and refresh rate temporarily or permanently (via command line switches). You can have Resolution Changer run another application in a specific display resolution and return to the previous resolution when the application finishes. The command lines switches let you alter only certain dimensions and choose the best refresh rate (or a specific one).
If you have an application that requires certain display settings (e.g., many children’s programs require 640×480x256 colors), you can modify that program’s shortcut to something like this:
reschange.exe -width=640 -height=480 -depth=8 -refresh=72 “c:\Program Files\Hasbro\Freddi.exe”
This shortcut will change to VGA resolution, run freddi.exe, and then restore the original display settings when freddi.exe stops running. If you don’t specify a program, it will just change the settings for you (and not restore them).
The “8″ represents an 8-bit color depth or 256 colors. “4″ is 16 colors; “16″ for 16-bit; “24″ for 24-bit; “32″ for 32-bit.
This example opens a spreadsheet:
reschange.exe -width=800 -height=600 cmd /c “c:\Documents and Settings\Susan\Desktop\Club.xls”
If you don’t specify a parameter, the program uses the current setting for that value. To select the maximum value of width, height, color depth, or refresh rate, specify “max” for the switch’s value.
If your computer has multiple monitors, there are a couple of switches you can use to control each monitor individually.
The -listmonitors switch will display the “friendly” name of the monitor (e.g., “Dell 2001FP (Digital)”) as well as a more specific device name (e.g., “\\.\DISPLAY1”). You can use the friendly name as long as it’s unique among your monitors, but if your monitors are all the same model, you will need to use the device name. The switch will also add the word “primary” to indicate the display you’ve specified as your main display.
The -monitor=”NAME” switch indicates which monitor to apply the resolution to. For example:
reschange.exe -monitor=”Dell 2001FP (Digital)” -width=1024 -height=768
reschange.exe -monitor=”\\.\DISPLAY1″ -width=1024 -height=768
If the monitor name isn’t recognized, it will use the primary monitor.
Please note that this switch cannot be used to control where the application appears—that’s something only the application can decide.
Aligner »