2008年11月04日

半透明スクリーンセーバー完成!

 今日はまず、昨日書いた半透明のスクリーンセーバーについてですが、今日は昨日とは違うやり方で作ってみました。

 今回は、WEB上にも結構サンプルや解説が多くある、専用のライブラリを使って作るやり方でやってみました。
 さすがに専用のライブラリを使うだけあって、たった数行コードを書くだけであっさりできました。
 もちろん、きちんと半透明で、昨日苦労したプレビュー機能もできました。

 ということで、ここから少し改良をして、設定ダイアログを作成し、そこから描画する図形の形を選択したり、透明度を変更できるようにしてみました。

 今回作るに当たって少しつまずいたところは、VS 2008用のライブラリではコンパイルは通るのですが、起動しようとするとエラーになるところです。
 少し調べてみると、内部で「Vista用の関数が実行できない」というエラーになっているようなので、結局2005のものを持ってきて使いました。
 これをみると、VS開発陣はVistaでしかテストしていないか、はなからろくにテストしてないかでしょうね。
 あと、この方法だとMFCを使わないので、設定の値一つ取得するのにも少し苦労しました。(^_^;

 模様は、ただ色の付いた図形が次々表示されるだけなのですが、結構良い感じで完成したので、ちょっとここで公開してみようかと思います。
 ダウンロードは scr.zip ←ここからして下さい。
 ファイルサイズは約21KBと、すごく小さいです。

 少し説明すると、zipファイルを解凍すると、TestScv.scrというファイルがあるので、とりあえず試してみたい場合は、右クリックから「テスト」を選択すると始まり、「構成」を選択すると、図形の形や透明度を設定できるダイアログが表示されるので、そこから各種設定をして下さい。

 「インストール」を選択するか、「Windows/system32」フォルダ内にコピー・移動させるかすると、通常のスクリーンセーバー設定画面に「半透明」というタイトルで表示され、選択できるようになります。

 設定については、見たらわかると思うので省略しますが、設定をすると「Windows」フォルダ内に、「Save.ini」という、設定保存用のファイルができるので、不用になったらこのファイルも削除して下さい。
 まぁ、そのまま残しておいてもまったく問題ないですけど。

 動作環境は、XPでしかテストしていませんが、2000以降で動作すると思います。

 今後は、これをベースにいろいろ凝ったものを作っていけたらと思います。
ランキングへ  posted by 遠雷 at 00:50 | コメント(0) | パソコン・インターネット

2008年11月03日

半透明スクリーンセーバー

 今日はまず、「ことわざの部屋」の「」の項目を更新しました。
 今回は114個追加の、4ページ増になりました。
 とりあえずこのサイトは、なんとか更新するペースを守れています。
 といっても、あせって一気にやってしまう傾向にありますが・・・。(;^_^A アセアセ…

 次に、以前にも書いた事ある半透明のスクリーンセーバーについてなのですが、以前のものはあまり気に入らなかったと書きましたが、ふと、「それなら自分で作ればいいじゃないか!」と思い立ち、スクリーンセーバーについて調べてみました。

 すると、結局中身は普通の実行ファイルで、起動時のコマンドオプションで処理を変えるだけみたいだったので、早速作ってみました。
 まずは実験として、プロジェクトをダイアログベースで作り、タイトルバーなど余分なのものをすべてなくし、起動時に最大化するようにして、ダイアログをレイヤードウインドウに設定、半透明にして、拡張子を「.scr」に変更、system32フォルダに入れてプロパティから変更してみました。
 すると、きちんと半透明で表示されました!

 しかし、内部では何の処理もしていないので、マウスを動かしてもキーを押しても画面が表示されたままになるのです。
 そこで、終了するための処理を書き加え、ダイアログ上に画像を貼り、カーソルも消すようにして表示させてみました。
 とりあえずこれで、何とかスクリーンセーバーらしく動作するようにはなったのですが、説明を見ると、なにやらいろんなメッセージに応答するように変更しなければいけないみたいで、その辺から少しややこしくなってきました。

 ということで、それはさておき、プロパティ画面でプレビューできるようにしたいと思い試してみたのですが、ここで思いっきりつまずきました。
 処理的には出来るはずなのですがうまくいかず、いろいろ検索してみても、プレビューについて説明してあるところを見つけることが出来なかったので、結局ここで挫折しました。

 それでも、とりあえずの形だけはできたので今回は良しとしましたが、何とかきちんと完成できるようにしたいと思っています。
 完成したら、透明度を設定できるスクリーンセーバーとして公開できたら、と思います。
ランキングへ  posted by 遠雷 at 00:53 | コメント(0) | パソコン・インターネット