チュートリアル : スマート デバイス用 MFC マルチプラットフォーム ActiveX コントロールの作成
更新 : 2007 年 11 月
Visual C++ を使用して、複数デバイスを対象とした MFC ActiveX コントロールのコードを記述できます。このチュートリアルでは、複数デバイスで使用できるように C++ マルチプラットフォームの MFC ActiveX コントロールをビルドする方法について説明します。
MFC ActiveX マルチプラットフォーム コントロール プロジェクトの作成
このチュートリアルは、主に次の 3 つの手順で構成されています。
マルチプラットフォームのスマート デバイス MFC ActiveX コントロール プロジェクトの作成
MFC ActiveX コントロールの OnDraw() メソッドへのコードの追加
マルチプラットフォームの MFC ActiveX コントロール ソリューションのテスト配置
詳細については、「MFC スマート デバイス ActiveX コントロール ウィザード」を参照してください。
メモ : |
---|
お使いのマシンで、Visual Studio ユーザー インターフェイスの一部の要素の名前や場所が、次の手順とは異なる場合があります。これらの要素は、使用している Visual Studio のエディションや独自の設定によって決まります。詳細については、「Visual Studio の設定」を参照してください。 |
このチュートリアルは、[Visual C++ 開発設定] を使用して記述されています。
マルチプラットフォームのスマート デバイス MFC ActiveX コントロール プロジェクトを作成するには
[ファイル] メニューの [新規作成] をポイントし、[プロジェクト] をクリックします。[プロジェクトの種類] ペインで [Visual C++] を展開し、[スマート デバイス] をクリックします。
[テンプレート] ペインの [MFC スマート デバイス ActiveX コントロール] をクリックします。
[プロジェクト名] ボックスに「MFCAX」と入力します。
[ソリューション名] ボックスでは、既定の [ソリューションのディレクトリを作成] オプションをそのまま使用します。
[OK] をクリックすると、MFC スマート デバイス ActiveX コントロール ウィザードが起動します。
[MFC スマート デバイス ActiveX コントロール ウィザード - 概要] ページで、[次へ] をクリックします。[プラットフォーム] (MFC スマート デバイス ActiveX コントロール ウィザード)が表示されるので、現在のプロジェクトに追加するプラットフォームを選択します。
[インストール済み SDK] ペインから、Smartphone 2003 や Pocket PC 2003 など、現在のプロジェクトに追加するプラットフォームを選択します。プラットフォームを追加するには、左ペインで Smartphone 2003 などのプラットフォームを選択し、右矢印のボタン ([>]) をクリックします。プラットフォームを削除するには、右ペインで Pocket PC 2003 などのプラットフォームを選択し、左矢印のボタン ([<]) をクリックします。
ウィザードを完了して閉じるには [完了] をクリックします。ウィザードの残りのオプションについて既定の設定を受け入れる場合は [次へ] をクリックします。
メモ : デバイス プロジェクトが作成されたため、これ以降はいつでもプラットフォームを追加できます。ただし、新しいプラットフォームを既存のプロジェクトに追加しても、依存するランタイム DLL が [追加ファイル] 構成プロパティに新しく追加されるわけではありません。たとえば、アプリケーションが動的に MFC にリンクしている場合は、新しく追加したプラットフォームの 追加ファイル プロパティに Mfc90u.dll、Atl90.dll、Msvcr90.dll の各 DLL を追加する必要があります。このサンプルでは、リテール構成を前提としています。
マルチプラットフォーム MFC コントロールの OnDraw() メソッドへのコード追加
MFC ActiveX コントロールの OnDraw メソッドにコードを追加するには
ソリューション エクスプローラで [ソース ファイル] を展開し、MFCAXCtrl.cpp ソース ファイルを選択してエディタで開きます。
OnDraw メソッドのコードを次のコードで置き換えます。重要なのは最後の 3 行です。
void CMFCAXCtrl::OnDraw( CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid) { if (!pdc) return; CRect rect; GetClientRect(&rect); pdc->DrawTextW(_T("Hello World"),11, &rect,1); }
[ビルド] メニューの [ソリューションのリビルド] をクリックします。
マルチプラットフォーム ソリューションの配置
ソリューションを配置するには
配置したソリューションを実行するには、まず対象デバイスに ActiveX コントロール プロジェクトを配置し、登録します。
Visual Studio ツール バーにある [ターゲット デバイス] ボックスの一覧で、[Pocket PC 2003 SE エミュレータ] または [Pocket PC 2003 デバイス] などの対象を選択します。
[ビルド] メニューの [配置] をクリックします。
対象デバイスの選択
ソリューションを配置するときにデバイス選択のダイアログが表示されるようにするには、次の手順を実行します。
配置時にデバイス選択のダイアログを表示するには
[ツール] メニューの [オプション] をクリックし、[デバイス ツール] を展開します。次に、[全般] をクリックします。[デバイス ツール] が表示されない場合は、[オプション] ダイアログ ボックスの下部にある [すべての設定を表示] を選択します。
[デバイス プロジェクトの配置前に選択できるデバイスを表示] チェック ボックスをオンにします。
詳細については、「Mobile Developer Center」を参照してください。