このアーカイブは同期化されません。 mixi の日記が更新されても、このアーカイブには反映されません。
次のステップに進むか。
現状のホストには大きな制限がある。
それはリソースの問題だ。
スクリーンセーバーの名前とアイコンは、
ホストに Windows のリソースとして埋め込まれる。
これらは、プラグインで置き換えることはできない。
これにより生じる制約は以下の 2 つ。
・表示するスクリーンセーバーの名前を変えられない
・スクリーンセーバーのアイコンを変えられない。
アイコンはどうでもいいとしても、
名前を変えられないのは結構致命的だ。
画面のプロパティで表示される一覧に、
好きな名前が使えないということだから。
対策としては、スクリーンセーバー(プラグイン)ごとに、
個別のホストを用意するという手もあるが、
これだと、ホストプラグインモデルの利点が損なわれる。
そもそも、プラグインモデルの利点は、
ホストが複数のプラグインを自由に着脱できることだ。
これを生かさなければ勿体ない。
例えば、画面のプロパティで表示される一覧には、
「.NET Saver Manager」等の名前となるようにしておく。
これは、ホスト自身の役割を意味する名前だ。
そして、その設定画面はプラグイン管理の画面とする。
ホストが直接ダイアログボックスを用意し、
その中で、好きなプラグインを選択できるようにする。
まあ、これだけではあまり面白くないので、
もう少しプラグインを活かす方法としては、
画面を 4 分割して、4 つのプラグインを同時実行するとか、
マルチモニタ環境で、それぞれのモニタで
別々のプラグインを実行するようにするとか。
このような機能を持たせるためには、
ホストにマネージャ機能を搭載し、
複数のプラグインを扱えるようにしなければならない。
となると、現在のようにプラグインを決め打ちできないので、
利用できるプラグインを列挙し、
それらを動的に読み込むような仕組みが必要になる。
構想としてはこんな感じかな。