チュートリアル : カスタム動作を使用した、インストール時のメッセージの表示
更新 : 2007 年 11 月
このチュートリアルでは、カスタム動作を使用してユーザー入力を受け取り、インストール中に表示するメッセージ ボックスにこれを渡す方法について、手順を説明します。ここで簡潔に説明するカスタム動作は、他の多くの作業にも利用できます。たとえば、カスタム動作を使用して、Setup.exe ファイルの場所をユーザー入力として受け取り、これを使用してインストール後にアプリケーションを起動させることができます。
このチュートリアルでは、カスタム動作を使用して動的なプロパティにデータを渡す方法、およびインストーラ クラスと CustomActionData プロパティの使用方法について説明します。
メモ : |
---|
使用している設定またはエディションによっては、表示されるダイアログ ボックスやメニュー コマンドがヘルプに記載されている内容と異なる場合があります。設定を変更するには、[ツール] メニューの [設定のインポートとエクスポート] をクリックします。詳細については、「Visual Studio の設定」を参照してください。 |
メモ : |
---|
ここでは、Visual Basic プロジェクトを使用して配置プロジェクトを作成する手順を説明しますが、基本的な部分は Windows アプリケーションの配置をサポートするどの Visual Studio 言語プロジェクトにも適用できます。 |
カスタム動作を追加するには
[ファイル] メニューの [新規作成] をポイントし、[プロジェクト] をクリックします。
[新しいプロジェクト] ダイアログ ボックスで、プロジェクトの種類 ペインの [Visual Basic] をクリックし、テンプレート ペインの [クラス ライブラリ] をクリックします。[プロジェクト名] ボックスに「PassData」と入力します。
新規プロジェクトがソリューション エクスプローラに追加されます。
インストーラ クラスを作成するには
[プロジェクト] メニューの [クラスの追加] を選択します。
[新しい項目の追加] ダイアログ ボックスで、[インストーラ クラス] をクリックします。既定の名前を使用します。
デザイン サーフェイスにインストーラ クラスが表示されるので、デザイン サーフェイスを右クリックし、[コードの表示] をクリックしてコード エディタにファイルの内容を表示します。
次のプロシージャを追加して、基本クラスの Install プロシージャをオーバーライドします。
Public Overrides Sub Install(ByVal stateSaver As System.Collections.IDictionary) MyBase.Install(stateSaver) Dim myInput As String = Me.Context.Parameters.Item("Message") If myInput Is Nothing Then myInput = "There was no message specified" End If MsgBox(myInput) End Sub
メモ : 「Public Overrides」と入力し、Space キーを押すと、IntelliSense によってメソッドとプロパティの一覧が表示されます。この一覧の [Install] を選択して宣言を記述できます。
ソリューション エクスプローラで、[Class1.vb] を右クリックし、[削除] をクリックします。Class1.vb は必要ありません。
配置プロジェクトを作成するには
[ファイル] メニューの [追加] をポイントし、[新しいプロジェクト] をクリックします。
[新しいプロジェクトの追加] ダイアログ ボックスのプロジェクトの種類ペインの [その他のプロジェクトの種類] ノードを開き、[セットアップとデプロイメント] をクリックし、テンプレート ペインの [セットアップ プロジェクト] をクリックします。[プロジェクト名] ボックスに「PassData Installer」と入力します。
[プロパティ] ウィンドウの ProductName プロパティを選択し、「PassData」と入力します。
また、Manufacturer プロパティを選択し、「My Company」と入力します。
ファイル システム エディタで、[アプリケーション フォルダ] ノードを選択します。[操作] メニューの [追加] をポイントし、[プロジェクト出力] をクリックします。
[プロジェクト出力グループの追加] ダイアログ ボックスで、PassData プロジェクトのプライマリ出力を選択します。
ファイル システム エディタに、[PassData (アクティブ) のプライマリ出力] が表示されます。
カスタム動作を追加するには
ソリューション エクスプローラで PassData Installer プロジェクトを選択します。[表示] メニューの [エディタ] をポイントし、[カスタム動作] をクリックします。
カスタム動作エディタで、(トップレベルの) [インストール] ノードを選択します。[操作] メニューの [カスタム動作の追加] をクリックします。
[プロジェクトから項目を選択] ダイアログ ボックスで、[アプリケーション フォルダ] をダブルクリックします。
[PassData (アクティブ) のプライマリ出力] を選択します。これで [インストール] ノードに PassData カスタム動作が追加されます。
[プロパティ] ウィンドウの CustomActionData プロパティを選択し、「/Message="[MESSAGE]"」と入力します。
InstallerClass プロパティが True (既定値) に設定されていることを確認します。
インストール ユーザー インターフェイスをカスタマイズするには
ソリューション エクスプローラで、セットアップ プロジェクトを選択します。[表示] メニューの [エディタ] をポイントし、[ユーザー インターフェイス] をクリックします。
ユーザー インターフェイス エディタで、[インストール] の下の [開始] ノードを選択します。[操作] メニューの [ダイアログの追加] をクリックします。
[ダイアログの追加] ダイアログ ボックスで、[テキストボックス (A)] ダイアログを選択します。
[操作] メニューの [上へ移動] をクリックします。[テキストボックス (A)] ダイアログが [インストール フォルダ] ノードの上に来るまで繰り返します。
[プロパティ] ウィンドウで BannerText プロパティを選択し、以下の文字列を入力します。
What is your message?
BodyText プロパティを選択し、以下の文字列を入力します。
Enter your message here.
Edit1Label プロパティを選択し、以下の文字列を入力します。
Message:
Edit1Property プロパティを選択し、以下の文字列を入力します。
MESSAGE
Edit2Visible、Edit3Visible、および Edit4Visible の各プロパティを選択し、それぞれに「False」を設定します。
[ビルド] メニューの [PassData Installer のビルド] をクリックします。
開発用コンピュータにインストールするには
ソリューション エクスプローラで PassData Installer プロジェクトを選択します。[プロジェクト] メニューの [インストール] をクリックします。
開発用コンピュータでインストーラが実行されます。[What is your Message?] インストール ダイアログ ボックスで、「Hello World!」と入力します。
メモ : インストーラを実行するには、コンピュータ上でインストールを実行する権限が必要です。
ほかのコンピュータに配置するには
Windows エクスプローラでプロジェクト ディレクトリに移動し、ビルドされたインストーラを探します。既定のパスは \Documents and Settings\yourloginname\My Documents\Visual Studio 2005\Projects\Solution Folder Name\My Notepad Installer\project configuration\My Notepad Installer.msi です。既定の project configuration は、Debug または Release です。
PassData Installer.msi ファイル、Setup.exe ファイル、およびディレクトリ内の他のファイルとサブディレクトリすべてを別のコンピュータにコピーします。
メモ : ネットワークに接続していないコンピュータにインストールするには、ファイルを CD-ROM などの従来のメディアにコピーしてください。
ターゲット コンピュータで、Setup.exe をダブルクリックしてインストーラを実行します。[What is your Message?] インストール ダイアログ ボックスで、「Hello World!」と入力します。
メモ : インストーラを実行するには、コンピュータ上でインストールを実行する権限が必要です。
インストールをテストするには
- アプリケーションを実行し、インストール中に入力した "Hello World!" というテキストが、テキスト ボックスに表示されているかどうかを確認します。
アプリケーションをアンインストールするには
Windows の [コントロール パネル] の [アプリケーションの追加と削除] をダブルクリックします。
[アプリケーションの追加と削除] ダイアログ ボックスの [PassData Installer] をクリックし、[削除] をクリックします。次に、[OK] をクリックしてダイアログ ボックスを閉じます。
ヒント : 開発用コンピュータからアンインストールするには、[プロジェクト] メニューの [アンインストール] をクリックします。