Katnap wrote:I feel like I'm being really dumb here, but... how do you go about creating a screensaver from scratch?
you can use a toolkit to make one (go to
http://www.download.com and search for screensaver generator for a list of examples)
or you can make one yourself using any programming language which can generate standard Windows .exe files.
a screensaver (*.scr) is a normal executable file renamed to *.scr, except, it does the following:
stops multiple instances from running. if you copy notepad.exe to notepad.scr into your windows system32 folder and set the timeout for 1 minute and have a fag, you'll come back 10 minutes later with 10 copies of notepad on your screen. the easiest way to stop this from happening is to use the win32api to create a named mutex and test for its existance everytime your screensaver is run.
it also handles several command line parameters passed to the *.scr program to display the configuration dialog and run a preview. the display properties control panel also passes the window handle of the preview pane so you get the pretty preview window.
it sounds quite complicated, but in reality, it's only a couple of hours work to get a framework together that does something basic like blank the screen or show a picture. that said, if all you want to do is something simple, it's a lot easier to find a tool kit geared at generating screensavers without any programming knowledge.