デバイス ソリューションをパッケージ化する方法の概要
更新 : 2007 年 11 月
デバイス アプリケーションをエンド ユーザーに配布するには、デバイス アプリケーションを CAB ファイルにパッケージ化する必要があります。
CAB ファイルは圧縮されたファイルのライブラリで、単一のファイルとして格納されます。デバイス プロジェクト用の CAB ファイルには、すべてのデバイス アプリケーション ファイルと、ファイルをインストールする場所および適用するショートカットとレジストリの設定を指定するインストール スクリプトが収められています。また、カスタム インストール手順を実行するための独自の固有 DLL を含めることもできます。たとえば、Windows CE や .NET Compact Framework のバージョン番号を確認したり、他のコンポーネントが存在するかどうかを判定したりできます。
エンド ユーザーは、CAB ファイルをデバイスにコピーし、デバイスのファイル エクスプローラから CAB ファイルを開始することで、デバイス アプリケーションをインストールします。これは、"CAB の展開" と呼ばれます。内部的には、CAB ファイルは WCELOAD.exe によって展開されます。この実行可能ファイルは、すべての Windows CE デバイスおよび Windows Mobile デバイスに存在します。
メモ : |
---|
Visual Studio には、CAB ファイルをパッケージ化するツールが用意されています。ただし、CAB ファイルを対象デバイスに配置するツールは用意されていません。単純なシナリオでは、Windows Mobile Device Center (WMDC) または ActiveSync の接続を使用して、デスクトップ コンピュータからデバイスに CAB ファイルをドラッグできます。複雑なシナリオの場合、使用可能ないくつかのサード パーティ製の配置ソリューションがあります。詳細については、「Delivering Applications」を参照してください。 |
IDE での CAB の作成
Visual Studio を使用すると、ほとんどの場合、統合開発環境 (IDE: Integrated Development Environment) で直接、必要なすべてのパッケージ化作業を実行できます。CAB ファイルを作成するには、既存のソリューションにスマート デバイス CAB プロジェクトを追加します。その後、デスクトップのセットアップ プロジェクトと同じユーザー インターフェイスを使用して、ファイル、ショートカット、およびレジストリ エントリをプロジェクトに追加します。セットアップ プロジェクトをビルドすると、CAB ファイルが作成されます。
Pocket PC アプリケーション用に作成した場合と Smartphone アプリケーション用に作成した場合とでは、CAB ファイルにいくつかの違いがあります。Windows Mobile Mobile 2003SE 以前を元にした Pocket PC では、圧縮された CAB ファイルまたは署名された CAB ファイルはサポートされません。Smartphone の CAB ファイルは必ず圧縮されます。また、EXE ファイルまたは DLL ファイルと、CAB ファイルのどちらも、デバイスにインストールする前に必ずデジタル署名が追加されます。
Visual Studio を使用して CAB ファイルを作成した後は、エンド ユーザーのデバイスに CAB ファイルを転送します。ファイルの転送には、任意の一般的な手段を使用できます。たとえば、デスクトップ インストーラ、デスクトップから接続されているデバイスへの Windows エクスプローラを使用した手動コピー、無線 (OTA) 転送などを使用できます。詳細については、「Delivering Applications」を参照してください。
デスクトップ インストーラの使用
最後に、エンド ユーザーが WMDC または ActiveSync をインストールしている場合は、デバイス アプリケーションの CAB ファイルをデスクトップ インストーラにパッケージ化できます。この場合は、デスクトップ コンピュータで MSI インストーラを実行することにより、デバイス アプリケーションをインストールします。デスクトップ インストーラは、WMDC または ActiveSync の一部であるアプリケーション マネージャ (CeAppMgr.exe) を使用して、CAB ファイルをターゲット デバイスに自動的にコピーして展開します。詳細については、次のトピックを参照してください。
参照
処理手順
チュートリアル : 配置用のスマート デバイス ソリューションのパッケージ化
概念
デバイス アプリケーションのパッケージ化をサポートする IDE 機能