[ C++で開発 ]

eMbedded Visual C++ 3.0

MicrosoftがリリースしているWindows CE 3.0用アプリケーションを開発するC++環境です。Windows CE用アプリケーションはクロス開発となります。本ツールはWindows NT系のPC上で使用します。

概要

Windows NT/2000/XP上で使用する、Windows CE 3.0用プログラム開発環境です。

言語仕様

eMbedded Visual C++ 3.0は、C++標準仕様に対して以下の違いがあります。

入手

eMbedded Visual C++ 3.0の他、ターゲット(ビルドしたプログラムを実際に実行させるWindowsCEマシン)のOSプロファイル、CPUによって異なるSDK、PC上でWindowsCEプログラムを模擬実行するためのエミュレータなどを入手します。

eMbedded Visual C++ 3.0

eMbedded Visual C++ 3.0は、eMbedded Visual Tools 3.0という製品の一部です。この製品には英語版と日本語版があります。英語版で開発してもプログラム中で日本語を使用ですることができます。日本語版はメニューと一部のヘルプファイルを英語から日本語に翻訳したものです。

eMbedded Visual Tools 3.0日本語版の入手

日本語版はWeb上で公開されていないので、Microsoftへ注文します。費用は1700円+税です。

http://www.microsoft.com/japan/windows/embedded/ce/tools/emvt30order.asp

eMbedded Visual Tools 3.0英語版の入手

英語版は、Web上で公開されています。サイズは300MB超。

ファイル名:EN_WINCE_EMBDVTOOLS30.exe

http://www.microsoft.com/mobile/downloads/emvt30.asp

Pocket PC 2002 SDK

Pocket PC 2002 SDK英語版の入手

マイクロソフトからダウンロードします。サイズは60MB超。

ファイル名:PPC2002_SDK.exe

http://www.microsoft.com/mobile/developer/downloads/ppcsdk2002.asp

または下記URLから、DeveloperのDownloadsへのリンクをたどり、Pocket PCのmore>へのリンクをたどり、続いてPocket PC 2002 Software Development Kitへのリンクをたどるとダウンロードのページになります。

http://www.microsoft.com/mobile/

2002年12月15日現在、Pocket PC 2002 SDKは、2002年2月20日バージョンが最新です。

Pocket PC 2002 エミュレータ

開発用PC(OS:WindowsNT系)の上で、PDA仮想マシンを実行し、PDA用ソフトウェアを模擬的に実行するための環境です。エミュレータはPocket PC 2002 SDK英語版に付属していますが、画面が英語となってるため、日本語用PDA用に日本語化を行います。

Pocket PC 2002 エミュレータ日本語化キットの入手

マイクロソフトからダウンロードします。サイズは10MB超。

ファイル名:Japanese-NoRadio.exe

http://www.microsoft.com/mobile/developer/downloads/ppc2002emulator/jp_eula.asp

または、Pocket PC 2002 SDK英語版のダウンロードページの中に、Pocket PC Emulator Imagesのダウンロードリンクがあるので、これをたどります。Japaneseを選び、ダウンロードします。

http://www.microsoft.com/mobile/developer/downloads/ppcsdk2002.asp

エミュレータの日本語化に関する解説があるサイト

書籍「Pocket PC 2002 モバイルコンピューティング入門」のサンプルページ

http://www.kujinet.np.to/books/ppc/samples/

Pocket PC 2002 SDKのエミュレーションを日本語化する際のレジストリ設定ファイルがある。

WindowsCEのプログラミング

http://benkyoman.zive.net/Developer/WindowsCE/

インストール

eMbedded Visual C++ 3.0

eMbedded Visual Tools 3.0英語版のインストール

自己解凍EXEファイルとなっているので、ダウンロード後適当な作業ディレクトリに解凍・展開します。作業ディレクトリに展開されたDISK1ディレクトリの中にsetup.exeがあるのでこれを実行します。実行に際しては、Administrator権限が必要となります。Windows2000の場合、[Shift]+右クリックでポップアップするメニューに「別のユーザとして実行」があるので、これでAdministratorユーザとして実行しました。Product Numberは、解凍・展開したディレクトリにあるcdkey.txtに書かれています。

コンポーネント種類 内容
eMbedded Visual Tools 3.0 eVC++、eVBが入っています。
Windows CE Platform SDK(H/PC Pro)
Windows CE Platform SDK(Palm-size PC 1.2)
Microsoft Windows Platform SDK for Pocket PC Pocket PCのSDKになります(≠Pocket PC 2002)

Pocket PC 2002 SDKは別途入れるので、とりあえず、eMbedded Visual Tools 3.0だけチェックしてみる。

インストールディレクトリは、デフォルトでは%SystemDirve%:\Windows CE Toolsだが、ルートディレクトリ直下に増やすのは好まないので、Program Filesの下に入れることにした。

Pocket PC 2002 SDK

Pocket PC 2002 SDK英語版のインストール

自己解凍EXEファイルとなっているので、ダウンロード後適当な作業ディレクトリに解凍・展開します。作業ディレクトリに展開されたsetup.exeを実行します。Pocket PC 2002 SDKは、「別ユーザ権限で実行」でAdministrator権限を指定してもインストールできません。

インストールディレクトリは、eMbedded Visual Tools 3.0をインストールしたディレクトリ直下のwce300ディレクトリとなります。

eMbedded Visual C++は、Administrator権限でないと実行できなくなっています。

一般ユーザでeVC++ を起動したとき
Microsoft eMbedded Visual C++ has discovered no CE platform SDK installed on the desktop.
Please install at least one CE platform SDK before launching Microsoft eMbedded Visual C++.
別のユーザとして実行でAdministratorを指定したとき
eVC failed to initialize the Platform Manager components. This generally occurs when Platform Manager components are not properly installed and registered.
Please re-install eVC to correct this problem.
If the problem persists after re-installing the product, please contact technical support for further assistance.

以下のレジストリキーのアクセス権を設定したら、Administrator権限がなくても実行できるようになっています。

HKEY_LOCAL_MACHINE\Microsoft\Windows CE Tools

Pocket PC 2002 エミュレータ

Pocket PC 2002 エミュレータの日本語化

ファイルの展開

自己解凍EXEファイルとなっているので、ダウンロード後適当な作業ディレクトリに解凍・展開します。作業ディレクトリに、Japanese-No Radioというディレクトリが生成され、その中に3つファイルができます。これをディレクトリごと、eMbedded Visual Toolsをインストールしたディレクトリの中にあるwce300\Pocket PC 2002\emulation\の中に放り込みます。以下は例。

C:\Program Files\Windows CE Tools\wce300\Pocket PC 2002\emulation\Japanese-No Radio
レジストリの変更

ファイルを所定の場所に置いたならば、レジストリを修正します。

レジストリ・キー

HKEY_CURRENT_USER\Software\Microsoft\Windows CE Tools\Platform Manager\
{F384D888-F9AA-11D1-BB9E-00A0C9C9CCEE}\{DE9660AC-85D3-4C63-A6AF-46A3B3B83737}\
{F384D894-F9AA-11D1-BB9E-00A0C9C9CCEE}\{67C8D913-F0CF-486A-8CF0-CE7D116225E8}

値名

Path

D:\Program Files\Windows CE Tools\wce300\Pocket PC 2002\emulation\Japanese-No Radio\jpnnoril.bin

Pocket PC 2002 エミュレータからEthernetを使う

MSDNのドキュメントによると、エミュレータ上からエミュレータを実行しているマシン上のEthernetカードを使用できるとあります。なお、その際EthernetカードはWindowsCE機で使用可能な種類である必要があり、EmulatorはDEC21040として認識するようです。使用可能であれば、エミュレータ上でネットワークアダプタの設定を行います(IPアドレスはホストと同じものを入力)。

開発の流れ

  1. PC上でeVC++を使ってビルドする
  2. エミュレータ上で実行・デバッグする
  3. ActiveSyncを通ってプログラムをターゲットにダウンロードする
  4. ターゲット上でプログラムを実行させ、デバッグも行う

ビルド

エミュレータ上で実行・デバッグ

エミュレータ上で実行するためには、ビルドするCPU種類を[WCE x86]にする必要があります。エミュレータといってもCPUまでエミュレートするものではないからです。

ライブラリ

STL for eMbedded Viual C++

参考