Windowsの壁紙を変更するAPIとしては、
- user32.dllのSystemParametersInfo関数
- IActiveDesktopインターフェース
- ビットマップ以外(JPEG, PNG等)にも対応
- jpeg等の表示時には、「ActiveDesktop=true」にする必要がある
- IE4以降の環境で利用可能
の2種類の方法があるようです。
前者のわかり易いサンプルがMSDNのcode4funにあったので、壁紙変更サンプルプログラムを作ってみました。
壁紙チェンジャ †
- binary : &ref(): File not found: "WallpaperSetter(18+).exe" at page "C#/壁紙チェンジャ"; 20KB
- source : &ref(): File not found: "WallpaperSetter.zip" at page "C#/壁紙チェンジャ"; 4.8KB
- インターネット接続環境で実行するだけ!
- http://jomora.net/picture/ (成人向け)からランダムな画像をダウンロード、My Picturesに保存した後、壁紙に設定して終了する。
- MSDN:code4funのWindowsAPIクラスを、改変なく利用しています。
- My Picturesフォルダが存在しない場合、実行ファイルと同じフォルダに一時ファイルが保存されます。その場合、ログオフすると壁紙が剥がれます。
- 毎日タスク実行なんかすると、いいかもね。