I guess this program could be a little more flexible, and its not that amazing, but I wanted to share it as it fulfilled a need I had.
Also, I wanted to share the technique I used as it took me a while to get it to work the way I wanted.
Background:
I have two monitors.
Often, I'll watch a movie or play a game on the left one, while I will also be browsing web pages and chatting with people on the right one.
If the movie or game is dark, and I'm looking a mostly white webpage, there is too much light.
Solution:
This program creates a window. A variable-alpha-transparency, black, always-on-top window, with no titlebar, etc.
It covers my entire right monitor. BUT, by setting WS_EX_TRANSPARENT, its made transparent to events, and thus mouse clicks, keystrokes, etc. are passed on through to the windows below it.
Win Numpad+ darkens the screen, Win Numpad- lightens the screen, Win Numpad* toggles the overlay on/off.
Getting WS_EX_TRANSPARENT set in an AHK script is as simple as adding +E0x20 to the Gui creation command.
So, without further ado, I present -- MonitorDimmer.
In both AHK and EXE.
Enjoy!
--matt