Screen Saver 作成講座

第1回 とりあえずスクリーンセーバーを作る



まず、環境として Visual C++4.0以降が必要です。
この講座では5.0を中心として進めていきます。
後、必要なのはアイディアですね。

さぁ、がんばりましょう!!

まず、VCを起動します。
メニューの "ファイル" -> "新規作成"をクリック。

新規作成ダイアログで "プロジェクト" のタグをクリックして、(もう選ばれていると思うけど)
"Win32 Application"を選択して
適当なプロジェクト名を入れてください。(ここでは"Scr"としてます)
それで "OK" を押してください。

次のソースを入力します。 メニューの"ファイル" -> "新規作成"をクリック。
新規作成ダイアログでの "ファイル" タグをクリックして、(もう選ばれていると思うけど)
"C++ソースファイル" を選択して、ファイル名を適当に入力してください。
(ここでは "Scr.c"とします。)
新しく開かれたウィンドウに以下のコードを入力してください。

// Src.c /////////////////////////////////////////////////////////////////////////// // // S C R E E N S A V E R // /////////////////////////////////////////////////////////////////////////// #include <windows.h> #include <scrnsave.h> // スクリーンセーバー用 LRESULT WINAPI ScreenSaverProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { switch (message) { case WM_CREATE: // 初期化処理 SetTimer(hwnd, 100, 0, NULL); // 描画用タイマー作成 break; case WM_TIMER: // タイマーイベント break; case WM_DESTROY: // 終了処理 KillTimer(hwnd, 1); break; } return DefScreenSaverProc(hwnd, message, wParam, lParam); } BOOL WINAPI ScreenSaverConfigureDialog(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { return TRUE; } BOOL WINAPI RegisterDialogClasses(HANDLE hInst) { return TRUE; } BOOL WINAPI DConfig(HWND hDlg, UINT message, UINT wParam, LONG lParam) { return TRUE; }
ソースはこれだけです。
後は、プロジェクトの設定を行います。
キーボードの"Alt" + "F7" を押してプロジェクトの設定ダイアログを開きます。
(メニューから開く場合 "プロジェクト" -> "設定..." をクリック。
これは VC4.x と 5.0では違います。)
"デバッグ"のタグをクリックし、
"x:\xxxxxxxxx\Debug\Scr.exe" を
"x:\xxxxxxxxx\Debug\Scr.scr" に変更して(拡張子だけ変えてください)
プログラムの引数に "/s"(ダブルクォート(")は不要です。以下特に指定のない限り不要です。)
を入力してください。
次に "リンク" のタグを選択し、
出力ファイル名を
"Debug/Scr.exe" を
"Debug/Scr.scr" に変更して
オブジェクト/ライブラリモジュール を
"user32.lib gdi32.lib advapi32.lib scrnsave.lib"に変更してください。
これで、"OK"ボタンを押して
メニューの "ビルド" -> "ビルド" をクリックして(F7)、デバッグ セッションの実行可能ファイルを
これでOKです。(のはずです。(^^;;)
エラーがなければメニューの "ビルド" -> "デバッグ開始" -> "実行" をクリック(F5)。

画面が真っ黒になれば完成です。マウスを動かすとか、キーボードを押すとかするとちゃんと終了する
スクリーンセーバーになってるでしょう?

今回はこれまで、 次回はこのスクリーンセーバーにビットマップを表示させてみましょう。