DOBON.NET プログラミング道: .NET Framework, VB.NET, C#, Visual Basic, Visual Studio, インストーラ, ...

環境変数Pathにパスを追加する

注意:セットアッププロジェクトはVisual Studio 2012からサポートされなくなりました。

環境変数に変数を追加、変更、削除するには、Windows InstallerデータベースのEnvironmentテーブルを使います。このEnvironmentテーブルはVisual Studioで操作できませんので、Orcaなどを使って編集する必要があります(さもなくば、カスタムアクションを使うことになるでしょう)。ここでは具体的に環境変数Pathにインストールしたパス([TARGETDIR])を追加する方法を説明します。

まずMSIファイルをOrcaで開きます。そして、Environment Tableに次のような行を追加します。なお詳しくは、ヘルプをご覧ください。

Environment
Path
Name
*=-Path
Value
[~];[TARGETDIR]
Component_
Enviroment
補足:NT系OSではName列の先頭に「*」を付けるとシステム環境変数に書き込まれ、付けないとユーザー環境変数に書き込まれます。詳しくはヘルプのRemarksをご覧ください。

またComponentテーブルに次のような行を追加します。

Component
Enviroment
ComponentID
(適当なGUID)
Directory_
TARGETDIR
Attributes
0

さらにFeatureComponentsテーブルに次のような行を追加します。

Feature_
DefaultFeature
Component_
Enviroment

これで保存すればOKです。

逆に、環境変数の値を取得するには、「[%(環境変数の名前)]」のようにします。例えばカスタム動作のCustomActionDataプロパティにより環境変数Pathを取得するには、CustomActionDataに「[%Path]」と指定します。

注意:この記事では、基本的な事柄の説明が省略されているかもしれません。初心者の方は、特に以下の点にご注意ください。

  • .NET Tipsをご利用いただく際は、注意事項をお守りください。