Visual Studio 2005 で Windows Mobile アプリケーション開発

image171

Visual Studio 2005 をせっかく買ったのに、Windows Mobile アプリの開発に使うことがなくて・・・。

Windows Mobile アプリを開発するために買ったのに、なぜか Windows アプリの開発ばかりに使われたりして。

それも、Express Edition で十分のような作業に。

というわけで、やっと Windows Mobile 開発の世界に入り込むために、いろいろ準備を。

正確に言うと、Windows Mobile アプリの開発をしなければいけない用事ができたといったほうがいいかな。

Visual Studio 2005 をインストールした時点では、Pocket PC 2003 と CE 5.0 のアプリの開発はできるようになっていますが、Windows Mobile 5 とか 6 の SDK はインストールされていません。

まあ、VS2005 発売当時は Windows Mobile 5 とか存在しなかったか?

自分で忘れないようにメモっておく要素も兼ねて、Windows Mobile 開発の下準備を書いておきます。

 

1. 必要なもの

  • Windows XP, Vista
  • Visual Studio 2005 Standard 以上

たぶんこれぐらい。

今回は Vista に Academic Edition をインストールした環境を使用。

 

2. Windows Mobile デバイス センター のインストール

今回は、Vista で環境を整えることにしたので、こいつを入れます。

XP なら ActiveSync ですね。

 

3. .NET Compact Framework のインストール

次に、.NET "Compact" Framework を導入します。

PC 用の、.NET Framework とは別物です。

詳細は知りませんが、モバイル用に機能を削減したものなのではないかと。

 

4. Windows Mobile SDK のインストール

メインとなる、SDK を導入します。

Windows Mobile 5.0 用と Windows Mobile 6 用があります。

なぜか、日本の Microsoft ダウンロードセンターにはありません。

それと、Smartphone 用と PocketPC 用とあったりで、結構ややこしいです。

入れておいて損はしないので、どちらも入れておくことにします。

 

5. Localized Emulator Image のインストール

先ほどインストールしたものは英語版の SDK なので、中に入っているデバイスエミュレータ (Windows Mobile デバイスをエミュレートするソフト。仮想マシンみたいな) も英語です。

なので、エミュレータの日本語版イメージをインストールします。

まあ、英語のままでも特に問題ないのですが、日本語環境周りの何かがありそうなので。

ちなみに、これも Smartphone と PocketPC とか、Standard と Professional とかあってややこしいです。

さらに、なぜか Windows Mobile 5.0 の方だけ WGA の確認が必要。

 

6. Visual Studio 起動。

image158

プロジェクトの作成を開いて、[スマートデバイス] の中に Windows Mobile 5 とか 6 とかがあれば OK。

少し遊んでみることにする。

あ、開発言語はもちろん C#。

 

image165 

普通の Windows アプリと何ら変わりない感じで組める。

特殊な手順とかもないし、ほとんどの機能は使える模様。

実行してみる。

 

image167 

起動するイメージを聞かれるので

  • JPN Windows Mobile 6 ....

っていうのをどれか選ぶ。

バージョンの違いとかは、お察しください。

VGA で起動すると、SXGA 以上のモニタじゃないとはみ出しますが、アドエスはこれ以上だったりする。

まあ、今回は Classic で。

 

image169

デバイスエミュレータが勝手に立ち上がって、プログラムが配置された。

ん~、いいね。

だけど、エミュレータだけあって、結構重いよ。

ちなみに、Windows Mobile 5.0 もほぼ同様の手順でいける。

 

7. デバイスエミュレータの日本語化

SDK を入れると何もかもインストールしてくれますが、すべて英語です。

デバイスエミュレータも例外ではなく。

だけど、いろいろ設定とかできるのに、英語じゃわからないって?

ええ、僕は英語のソフトは、日本語化パッチを当てないまま使っちゃうタイプですが、一応載せておきましょう。

こいつを入れれば日本語化されます。

 

image187 

感動・・・?

まあ、オプションとカが日本語になって、いろんな設定が少しはやりやすくなったかな?

って大した差でもないけどさ。

 

8. 互換性について...

Windows Mobile 5 SDK で作ったアプリは、もちろん Windows Mobile 6 でも動きます。

Windows Mobile 6 SDK で作ったアプリも、Windows Mobile 5 で動くようです。

何が変わってるのかは、よくわからない・・・。

 

ちなみに、こちらも当然のことですが

Pocket PC 2003 用プロジェクトで作成したアプリは、Windows Mobile 5, 6 で動きます。

CE 5.0 用プロジェクトで作成したアプリも、Windows Mobile 5, 6 で動きます。(どちらも CE 5.0 ベース

 

ここから先が、なんとなく新発見。

Pocket 2003 用のアプリを Windows Mobile 5, 6 で動かすときに問題になることと言えば、メニューですよね?

でも、あれ実はメニューアイテムが 2 個以下であれば、Windows Mobile 5, 6 で実行してあげると普通のメニューになります。

というか、Windows Mobile 5, 6 用のアプリでも、メニューアイテムを 3 個以上にすることは可能。

3個以上にすると、自動的に Pocket PC 2003 みたいな感じになる。

要するに、あれって Pocket PC 2003 用のアプリだから、古いメニューになるわけじゃないんだよね・・・。

結構、誤解されてるような気がする。(自分だけか?

ということは、わざわざ Windows Mobile 5, 6 用の SDK をインストールすることもないということかも。

 

9. One more thing...

ちょっとした驚きの結果を。

Windows Mobile 用の .NET アプリの実行ファイル (.exe) をそのまま PC で実行したらどうなるか。

こうなります。Boom!

 

image179

Un-believable!!

.NET Power!! It's huge!! な感じ。

なんかすごいよね Pretty cool, uh? だし。(意味不明

.NET Compact Framework 上で動くので、PC でも実行できるんでしょうね。

もしや、これって Windows Mobile と PC で同じ実行ファイルが動くってことは、ハイブリッドなアプリが作れるんじゃ?

でも、PC が側で動かすときにちゃんと動くか、それとウィンドウサイズが固定だからな・・・。

まあ、面白そうだ。.NET Compact Framework 必要だけど。

こんなところで、.NET Framework のマルチプラットフォーム的なものを見るとは思わなかった。

 

わざと書いておくけど、MS ネタなのに Jobs 様の口癖を連発するとはどういうことだ!って言うのはやめてくださいw

連発といっても、ジョブスほど Boom! してませんが・・・。(なぜこんなことに...

トラックバック(0)

このブログ記事を参照しているブログ一覧: Visual Studio 2005 で Windows Mobile アプリケーション開発

このブログ記事に対するトラックバックURL: http://techno-st.net/mt/mt-tb.cgi/599

コメントする

2008年8月

     12
3456789
10111213141516
17181920212223
24252627282930
31      

アーカイブ

  • 月別アーカイブ:
  • カテゴリーアーカイブ:

Ads

このブログ記事について

このページは、technoが2008年5月31日 23:44に書いたブログ記事です。

ひとつ前のブログ記事は「Fedora 9 で、W-ZERO3 をモデムにする。」です。

次のブログ記事は「2008年4月のアクセス状況」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

 

- 実験中 -

mgfxjey49@techno-st.net

xq58grpua@techno-st.net

m0ss9eatc(at)techno-st.net

y75vdonfa@techno-st.net

edvvb6cx9@techno-st.net

Mail Address