SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

japan.internet.com翻訳記事

.NETの高度な配置機能を活用する

エンドユーザーに応じてインターフェイスがカスタマイズされるアプリケーションの作成

  • X ポスト
  • このエントリーをはてなブックマークに追加

配置プログラムの作成

 Visual Studio .NETには、デプロイメントプロジェクトを作成するための便利で強力な機能が用意されています。VS .NETでは、次の4種類のデプロイメントプロジェクトを作成できます。

  • セットアッププロジェクト ― Windowsアプリケーションのセットアッププログラム
  • Webセットアッププロジェクト ― Webアプリケーションのセットアッププロジェクト
  • マージモジュールプロジェクト ― 共有コンポーネント向けのプロジェクト
  • Cabプロジェクト ― キャビネットファイルの作成

 デプロイメントプロジェクトは、セットアップウィザードを使っても作成できます。多くの場合、これが最も簡単で最適な方法です。

 プロジェクトの種類、ソフトウェアの複雑さ、配布の方法に応じて、先に挙げた4種類の中から1つを選ぶことができます。本稿では、Windowsアプリケーションを扱っているため、セットアッププロジェクトを取り上げます。ただし、4種類のプロジェクトはどれも非常に効果的なので、すべてについて十分に理解する必要があるでしょう。

 以降では、VS .NETを使ってセットアッププロジェクトを作成する手順を説明します。

  1. ソリューションエクスプローラのソリューションを右クリックし、[Add]、[New Project...]の順にクリックします。プロジェクトの名前を入力します(図3)。このセットアッププロジェクトの名前によって、VS .NETが自動生成する.msiファイルの名前が決まります。
  2. 図3 ソリューションにセットアッププロジェクトを追加
    図3 ソリューションにセットアッププロジェクトを追加
  3. プロジェクトに項目を追加します。図4に示すように、セットアッププロジェクトを右クリックし、[Add]、[Project Output...]の順にクリックします。
  4. 図4 プロジェクト出力の追加
    図4 プロジェクト出力の追加
    [Add Project Output Group]ダイアログボックスが表示されます。[Primary output]と、プロジェクトに適用するその他の項目を一覧から選択し、[OK]をクリックします。
    図5 プロジェクト出力グループの追加ダイアログボックス
    図5 プロジェクト出力グループの追加ダイアログボックス
  5. セットアッププロジェクトのプロパティを編集します。セットアッププロジェクトをクリックすると、プロパティのダイアログボックスが表示されます。ここでは、作成者(Author)、説明(Description)、キーワード(Keywords)、製造元(Manufacturer)、製造元URL(ManufacturerUrl)、製品名(ProductName)、タイトル(Title)の各プロパティを編集します。
  6. 図6 セットアッププロジェクトのプロパティ
    図6 セットアッププロジェクトのプロパティ
    ソフトウェアのインストール後、インストールした製品の[サポート情報]ダイアログボックスにいくつかのプロパティが表示されます。この内容は、コントロールパネルの[プログラムの追加と削除]ウィンドウを開くことで参照できます。
  7. ショートカットを[スタート]メニューに追加します。セットアッププロジェクトをクリックし、[View]、[File Systems]を順にクリックします。
  8. 左側の項目は、エンドユーザーのコンピュータにある特別なフォルダを表現しています。[スタート]メニューの[プログラム]フォルダに直接ショートカットを追加するには、図7に示すように、[User's Program Menu]という項目を選択し、右側のペインを右クリックして、ポップアップメニューから[Create New Shortcut]をクリックします。
    図7 [スタート]メニューへのショートカットの追加
    図7 [スタート]メニューへのショートカットの追加
    表示される[Project]ダイアログボックスの[Select Item]において、ドロップダウンリストから[Application Folder]をクリックし、セットアッププロジェクトから[Primary Output]を選択して、[OK]をクリックします。次に、ショートカットの名前をアプリケーションの名前に変更します。Windows XPの場合、この名前は[スタート]、[すべてのプログラム]を順にクリックしたときに表示されるものです。
    同じようにしてデスクトップにショートカットを追加することもできます。ただし、この場合は図7に示した特別なフォルダではなく、[User's Desktop]フォルダを用います。
  9. 最後に、セットアッププロジェクトを右クリックして[Build]をクリックすることで、このセットアッププロジェクトのビルドを行います。

ユーザーインターフェイス

 それでは、セットアッププロジェクトのユーザーインターフェイスについて見ていきましょう。そのためには、ソリューションエクスプローラのセットアッププロジェクトを右クリックし、ポップアップメニューから[View]、[User Interface]の順にクリックします。図8に示すように、フォームデザイナ領域の新しいタブにユーザーインターフェイスエディタが表示されます。

図8 ユーザーインターフェイスエディタ
図8 ユーザーインターフェイスエディタ

 デフォルトでは、「Install」セクションと「Administrative Install」セクションの下にあるいくつかのダイアログボックスを用いる構成になっています。それぞれのセクションには3つのサブセクション、「Start」、「Progress」、「End」があります。各サブセクションには、1つまたは複数のダイアログボックスが存在します。これらのダイアログボックスは、インストールプロセスの途中でセットアッププログラムによって順に表示されます。追加のダイアログボックスが存在しない場合は、デフォルトのダイアログボックスによって、フォルダの選択、オプションの指定、インストール進行状況の表示という一連の流れが実現されます。これらのダイアログボックスのプロパティは、プロパティウィンドウを使って変更できます。また、管理者に対して他のユーザーとは異なるセットアップ機能を提供する場合は、「Administrative Install」セクションのダイアログボックスに別のプロパティを用意することもできます。ダイアログボックスの上下移動や削除は、右クリックの後に[Move Up]、[Move Down]、[Delete]のいずれかをクリックすることで行えます。

 デフォルトのダイアログボックスの他に、数多く存在する組み込みのダイアログボックスの一覧からダイアログボックスを追加することもできます。この追加を行うには、ユーザーインターフェイスエディタに表示される前述のサブセクション(Start、Progress、End)のいずれかを右クリックし、ポップアップメニューから[Add Dialog]コマンドをクリックします。図9に示すように、「Add Dialog」ウィザードが表示され、追加するダイアログボックスの種類を選択できます。

図9 ダイアログの追加ボックス
図9 ダイアログの追加ボックス

 図9に示した組み込みのウィンドウのすべてをここで説明するわけにはいかないので、代表として「TextBoxes (A)」だけを説明します。どのダイアログボックスを追加するときも考え方は同じですが、プロパティはそれぞれ異なります。他のダイアログボックスの詳細については、MSDN Webサイトを参照してください。

 テキストボックスのダイアログボックス(Textboxes (A)、Textboxes (B)、Textboxes (C))はいずれも同じものです。これらのダイアログボックスは、カスタムのセットアッププログラムで必要な追加情報の入力をユーザーに促すために使用されます。それぞれにエディットボックスが4つあり、EditNVisibleプロパティをTrueまたはFalseに設定することで、4つのうちのどれでも表示と非表示の切り替えができます(なお、EditNVisibleプロパティのNはテキストボックスのインデックス(番号)を指定するもので、たとえば2番目のテキストボックスの場合はN = 2となります)。

 本稿の目的を達成するには、「Start」セクションを右クリックし、[Add Dialog]を選択してテキストボックス(A)を追加する必要があります。[Textboxes (A)]を選択して、[OK]をクリックします。次に、[Textboxes (A)]を右クリックし、[Move Up]をクリックして、図10に示すように[Welcome]ダイアログボックスに「Textboxes (A)」をセットします。

図10 テキストボックス(A)を含むユーザーインターフェイス
図10 テキストボックス(A)を含むユーザーインターフェイス

 今度はテキストボックス(A)のプロパティを編集する必要があります。図11に示すのは、テキストボックス(A)のダイアログボックスの設定に用いるプロパティです。

図11 テキストボックス(A)ダイアログボックスの設定に使用するプロパティ
図11 テキストボックス(A)ダイアログボックスの設定に使用するプロパティ

 図11に示したように、本稿では、最初のテキストボックス1つしか使いません。他の3つについては、EditNVisibleプロパティをFalseにして非表示にします。ユーザーによって入力されたデータを取得するには、コード中でEdit1Propertyの値(COMPANYNAME_A1)を参照する必要があります。

 ここまでの操作で、ユーザーの所属企業名を入力するための手段が用意されました。さらに、ユーザーが企業名の入力を行わない場合のためのデフォルト名も用意しておきましょう。このデフォルト名を定義するには、Edit1Valueプロパティを「Arslan Inc.」に設定します。これで、いわゆるカスタム動作の実行に必要なデータを取得するための準備がすべて整いました。

次のページ
カスタム動作

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
japan.internet.com翻訳記事連載記事一覧

もっと読む

この記事の著者

japan.internet.com(ジャパンインターネットコム)

japan.internet.com は、1999年9月にオープンした、日本初のネットビジネス専門ニュースサイト。月間2億以上のページビューを誇る米国 Jupitermedia Corporation (Nasdaq: JUPM) のニュースサイト internet.comEarthWeb.com からの最新記事を日本語に翻訳して掲載するとともに、日本独自のネットビジネス関連記事やレポートを配信。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

Anthony Arslan(Anthony Arslan)

現在、開発者としてネブラスカ州リンカンの大手金融機関に勤務するかたわら、地元の大学で「Microsoftアプリケーション」という授業を受け持っている。コンピュータ科学修士。連絡先はarslan@nefel.com

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/317 2006/02/16 13:10

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング