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

インストール時にインストール先のフォルダパスをレジストリに書き込む

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

セットアッププロジェクトで作成したインストーラによって、インストール時にレジストリに値を書き込むには、レジストリエディタを使用します。このレジストリエディタで追加できる名前や値にはWindows Installerのプロパティを使用できるようなので(ヘルプには明記されていないようですが)、インストール先のフォルダパスを表す[TARGETDIR]プロパティを利用して、レジストリエディタに値を追加すればよいでしょう。

具体的な方法を示します。ここでは、レジストリキー「HKEY_LOCAL_MACHINE\Software\[Manufacturer]\[ProductName]」に名前「Path」で値がインストールしたパスとなる値を書き込むようにします。例えばセットアッププロジェクト(デプロイメントプロジェクト)のManufacturerプロパティが「既定の会社名」でProductNameプロパティが「Setup1」の場合は、「HKEY_LOCAL_MACHINE\Software\既定の会社名\Setup1」というキーに書き込まれます。

まず、VSの「レジストリエディタ」を開きます。ソリューションエクスプローラーでセットアッププロジェクトを右クリックしてコンテキストメニューを表示し、「表示」-「レジストリ」を選択すればレジストリエディタが開きます。

次にレジストリキー「HKEY_LOCAL_MACHINE\Software\[Manufacturer]\[ProductName]」を作成します。レジストリエディタの左側のツリーで「HKEY_LOCAL_MACHINE\Software\[Manufacturer]」を右クリックし、メニューから「新規作成」-「キー」を選択してキーを作成します。そのキーの名前を、「[ProductName]」に変更します。

それから、このキーに値を追加します。ツリーで「HKEY_LOCAL_MACHINE\Software\[Manufacturer]\[ProductName]」を選択してから、右側のペインで右クリックしてメニューを表示します。ここで「新規作成」-「文字列の値」を選択し、追加される値のNameプロパティを「Path」、Valueプロパティを「[TARGETDIR]」とします。

これでインストールしたパスがレジストリに書き込まれるようになります。

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

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