作成日: 2013/09/06 最終更新日: 2014/07/30
文書種別
使用方法
詳細
Visual Studio 2010/2012/2013から利用できる「InstallShield Limited Edition(以下、InstallShield LE)」を使用して、.NET製品を使用したアプリケーションのインストーラを作成する際に、注意すべき点について説明します。
※ InstallShield LE自体の使用方法については、「参考情報」のリンク先をご覧ください。
※ Visual StudioのExpress Editionでは、InstallShield LEは利用できません。
注意事項
1. 「Application Files」画面でランタイムファイルを追加する
InstallShield LEには、Visual Studio 2010までのセットアッププロジェクトにおける「必須コンポーネント」設定のような、ブートストラッパの.msiファイルをインストーラに組み込む機能がありません。そのため、アプリケーションの実行に必要なランタイムファイルは、各ファイルを直接配布する形でインストーラに組み込む必要があります。
具体的には、「Application Files」画面で、ランタイムファイルをインストーラに追加します。
各ランタイムファイルの追加先(配布先)は、以下のとおりです。
(1)アセンブリのDLLファイル
アプリケーションのEXEやDLLファイルと同じフォルダ(例:[INSTALLDIR])か、またはグローバルアセンブリキャッシュ(GAC)に追加します。
グローバルアセンブリキャッシュへ追加する場合は、「Application Files」画面の左側ペインで任意のフォルダ(「Destination Computer」など)を右クリックし、コンテキストメニューから[Show Predefined Folder]-[GlobalAssemblyCache]を選択すると[GlobalAssemblyCache]フォルダが表示されますので、その中に配布するファイルを追加します。
(2)サテライトアセンブリのDLLファイル
サテライトアセンブリが存在する製品(ActiveReportsやInputManなど)の場合は、(1)のフォルダに「ja」という名前のフォルダを作成し、その中にサテライトアセンブリのDLLファイルを追加します。
または、(1)と同じ方法で、グローバルアセンブリキャッシュへ追加します。この場合は[GlobalAssemblyCache]フォルダに「ja」フォルダを作成する必要はありません。
(3)その他のランタイムファイル
(1)および(2)以外のランタイムファイル(ASP.NET製品におけるスクリプトファイルなど)が必要な場合は、それらを適切なフォルダに追加します。
ランタイムファイルの詳細については、各製品に付属している製品ヘルプの「ランタイムファイルの配布について」をご覧ください。製品ヘルプは、スタートメニューなどから表示できます。
(例)
PowerTools ActiveReports for .NET 7.0J
- ActiveReportsユーザーガイド
- アプリケーションの配布
- ランタイムファイルの配布について
PowerTools InputMan for Windows Forms 7.0J
- InputManの使い方
- アプリケーションの配布
- ランタイムファイルの配布について
PowerTools SPREAD for Windows Forms 7.0J
- 製品ヘルプ一覧
- アプリケーションの配布
- ランタイムファイルの配布について
2. 不要な依存ファイルを除外する
InstallShield LEは、配布するファイルの依存関係を自動的に検出し、検出された依存ファイルをインストーラに含めます。
この機能により自動検出された依存ファイルが、インストーラを作成している環境に見つからない場合、インストーラのビルド時にエラーが発生します。本エラーを回避するには、以下の手順により、不要な依存ファイルをインストーラから除外します。
(1)Visual Studioのソリューションエクスプローラー上で[Specify Application Data]-[Files]をダブルクリックし、インストールファイルの設定画面を表示します。
(2)右下の「Destination computer's files」ペインに表示されている各ファイルを右クリックし、コンテキストメニューから「Dependencies from scan at build...」を選択すると、「Dependencies」ダイアログが表示されます。
(3)「Dependencies」ダイアログには、検出された依存ファイルが表示されます。
ファイルのアイコンに赤い印が付いている場合は、その依存ファイルが見つからないことを意味しています。チェックボックスをオフにし、インストーラから除外してください。
除外したファイルが、アプリケーションの実行に必要なランタイムファイルである場合は、前述の「1. 「Application Files」画面でランタイムファイルを追加する」の方法でインストーラに追加してください。
※ 「sac.dll」「user32.dll」というファイルが検出された場合は、インストーラから除外してください。これらのファイルをアプリケーションの運用環境に配布する必要はありません(配布が許可されていません)。
参考情報
InstallShield LEの使用方法については、以下のページを参考にしてください。
Visual Studio 2012、2013 における InstallShield のサポートについて
※ InstallShield LE自体の使用方法については、「参考情報」のリンク先をご覧ください。
※ Visual StudioのExpress Editionでは、InstallShield LEは利用できません。
注意事項
1. 「Application Files」画面でランタイムファイルを追加する
InstallShield LEには、Visual Studio 2010までのセットアッププロジェクトにおける「必須コンポーネント」設定のような、ブートストラッパの.msiファイルをインストーラに組み込む機能がありません。そのため、アプリケーションの実行に必要なランタイムファイルは、各ファイルを直接配布する形でインストーラに組み込む必要があります。
具体的には、「Application Files」画面で、ランタイムファイルをインストーラに追加します。
各ランタイムファイルの追加先(配布先)は、以下のとおりです。
(1)アセンブリのDLLファイル
アプリケーションのEXEやDLLファイルと同じフォルダ(例:[INSTALLDIR])か、またはグローバルアセンブリキャッシュ(GAC)に追加します。
グローバルアセンブリキャッシュへ追加する場合は、「Application Files」画面の左側ペインで任意のフォルダ(「Destination Computer」など)を右クリックし、コンテキストメニューから[Show Predefined Folder]-[GlobalAssemblyCache]を選択すると[GlobalAssemblyCache]フォルダが表示されますので、その中に配布するファイルを追加します。
(2)サテライトアセンブリのDLLファイル
サテライトアセンブリが存在する製品(ActiveReportsやInputManなど)の場合は、(1)のフォルダに「ja」という名前のフォルダを作成し、その中にサテライトアセンブリのDLLファイルを追加します。
または、(1)と同じ方法で、グローバルアセンブリキャッシュへ追加します。この場合は[GlobalAssemblyCache]フォルダに「ja」フォルダを作成する必要はありません。
(3)その他のランタイムファイル
(1)および(2)以外のランタイムファイル(ASP.NET製品におけるスクリプトファイルなど)が必要な場合は、それらを適切なフォルダに追加します。
ランタイムファイルの詳細については、各製品に付属している製品ヘルプの「ランタイムファイルの配布について」をご覧ください。製品ヘルプは、スタートメニューなどから表示できます。
(例)
PowerTools ActiveReports for .NET 7.0J
- ActiveReportsユーザーガイド
- アプリケーションの配布
- ランタイムファイルの配布について
PowerTools InputMan for Windows Forms 7.0J
- InputManの使い方
- アプリケーションの配布
- ランタイムファイルの配布について
PowerTools SPREAD for Windows Forms 7.0J
- 製品ヘルプ一覧
- アプリケーションの配布
- ランタイムファイルの配布について
2. 不要な依存ファイルを除外する
InstallShield LEは、配布するファイルの依存関係を自動的に検出し、検出された依存ファイルをインストーラに含めます。
この機能により自動検出された依存ファイルが、インストーラを作成している環境に見つからない場合、インストーラのビルド時にエラーが発生します。本エラーを回避するには、以下の手順により、不要な依存ファイルをインストーラから除外します。
(1)Visual Studioのソリューションエクスプローラー上で[Specify Application Data]-[Files]をダブルクリックし、インストールファイルの設定画面を表示します。
(2)右下の「Destination computer's files」ペインに表示されている各ファイルを右クリックし、コンテキストメニューから「Dependencies from scan at build...」を選択すると、「Dependencies」ダイアログが表示されます。
(3)「Dependencies」ダイアログには、検出された依存ファイルが表示されます。
ファイルのアイコンに赤い印が付いている場合は、その依存ファイルが見つからないことを意味しています。チェックボックスをオフにし、インストーラから除外してください。
除外したファイルが、アプリケーションの実行に必要なランタイムファイルである場合は、前述の「1. 「Application Files」画面でランタイムファイルを追加する」の方法でインストーラに追加してください。
※ 「sac.dll」「user32.dll」というファイルが検出された場合は、インストーラから除外してください。これらのファイルをアプリケーションの運用環境に配布する必要はありません(配布が許可されていません)。
参考情報
InstallShield LEの使用方法については、以下のページを参考にしてください。
Visual Studio 2012、2013 における InstallShield のサポートについて
http://support.microsoft.com/kb/2900817/ja
InstallShield Limited Editionhttp://msdn.microsoft.com/ja-jp/library/dn531020.aspx
Windowsフォーム・アプリケーションの配布方法 - @IThttp://www.atmarkit.co.jp/fdotnet/chushin/introwinform_12/introwinform_12_02.html
Windows インストーラー配置http://msdn.microsoft.com/ja-jp/library/vstudio/2kt85ked.aspx
.NET Framework 配置ガイド (開発者向け) - InstallShield 配置http://msdn.microsoft.com/ja-jp/library/vstudio/ee942965.aspx#installshield
関連情報
旧文書番号
36431