とはいっても、取り敢えず作れる程度のものですが、まあちょっとは役に立つかな。
元々は、テーマの中身を調べようなんて気は全然なく、WM 6.5用テーマの動作をみるために、標準で入っているテーマを色々変えていったんです。
したら、『プログラムの削除』画面のプログラム一覧にテーマ名が出てるじゃないですか。
『なんだ、WM 6.5 のテーマって、CABインストーラじゃん』と気付いて、試してみたら、出来ちゃったわけです。
まあ、最近、CABインストーラについては色々調べたからねー。
では、早速、Visual Studio 2008で、WVGAサイズのテーマを作成してみます。
画像の準備
WM 6.5用 テーマは、従来のものに比べて、設定できる項目がかなり増えてます。
背景以外にも色々な画像が指定できます。
例えば、タスクバー、スクロールバーの[↑][↓]ボタン、メッセージボックスのタイトルバー、ListViewの選択アイテム等をpng画像で指定できます。
なので、それらを全てデザインすると結構大変なんだけど、今回はそれらのデザインは省略しました。
じゃあどうしたかっていうと、最初から入っているClassic Blueのものを流用(レジストリで指定)します。
てことで、用意するのは縦横の背景画像だけです。
- 縦画面用に480×800の画像を作成して、stwater_480_800.jpgという名前で保存。
- 横画面用に800×480の画像を作成して、stwater_800_480.jpgという名前で保存。
※もしかしたら、png画像にも対応しているのかもしれないけど、試してない。レジストリファイルの準備
前述したように、背景画像以外は最初からあるものを流用するので、そのためのレジストリを設定する必要があります。
これが一番大変なんだけど、とりあえず、最初からあるものを設定するREGファイルを用意したので、これをダウンロードして使いまわせばOK。
ただし、エミュレータでしか動作確認してないし、全部を解明しているわけではないので、間違いや不足があるかもしれません。
これを使用する際は、自己責任でお願いします。
VS2008でのプロジェクトの作成
準備が出来たので、実際にCABインストーラを作成します。
- スマートデバイスCABプロジェクトを選択し、任意の名前で新規作成する。
- ファイルシステムエディタで、特殊なフォルダ→Windowsフォルダを追加する。
- そのWindowsフォルダに、先ほど作成した縦横の背景画像を追加する。
- レジストリエディタでREGファイルをインポートする。
- プロジェクトのプロパティを適切に設定する。
デフォルトで日本語が設定されているものがあるが、これは英語に直すこと。既定値に日本語を使っておきながら、CabWizardは日本語を通せないという素晴らしい仕様なので注意。 - ビルドして、生成されたCABファイルの拡張子をtskに変更すれば出来上がり。
出来上がり
背景画像は、VistaのWindowsフォルダに入ってた画像を整形したもの。
背景が暗いので、MoonClockの半透過パネルは不透明度を0にして完全に消してます。
おまけに、じゅんたろさんとこで紹介されてた方法でセパレータも消してます。
すっきり広く感じるね。