static void Main(string[] args) {
if (args.Length > 0) {
// 2 文字のコマンド ライン引数を取得します。
string arg = args[0].ToLower(CultureInfo.InvariantCulture).Trim().Substring(0, 2);
switch (arg) {
case "/c":
// オプション ダイアログを表示します。
ShowOptions();
break;
case "/p":
// プレビューに対して何もしません。
break;
case "/s":
// スクリーン セーバーのフォームを表示します。
(new Form1()).ShowDialog();
break;
default:
MessageBox.Show("コマンド ライン引数が無効です :" + arg, "コマンド ライン引数が無効です。", MessageBoxButtons.OK, MessageBoxIcon.Error);
break;
}
} else {
// 渡される引数がない場合、スクリーン セーバーを表示します。
(new Form1()).ShowDialog();
}
}
メインループをそのまま利用するとPCの処理能力をギリギリまで利用するスクリーンセーバーになってしまいます。
なのでループ周辺をスレッド処理にして、
Thread.Sleep(5); |
http://www.harding.edu/fmccown/screensaver/screensaver.html