2009-04-18 11 views
2

私は、特定のアセンブリがGACにあるかどうかをWiX 3(好ましくは条件を介して)で検出したいと考えています。私は、上記のアセンブリの名前、バージョン、公開鍵トークンを知っています。これを行うための方法がありますか、それを行うにはCustomActionを記述する必要がありますか?そしてそのCustomActionを設定するにはどうすればいいですか?アセンブリがWiX 3経由でGACに存在するかどうかを検出しますか?

答えて

3

FileSearchを使用すると、%windir%\ assembly \ GACのファイルを検索できます(他のすべての値がわかっている場合)。少しハッキリですが動作します。
完全なファイルパスは、インストールの開始前に使用できるプロパティ内に格納されます。

+0

私のために働きます。 GACのディレクトリに直接行くのはちょっとハッキリですが、そうでなければかなりきれいです。ディレクトリは、名前、バージョン、公開鍵トークンによって命名されますが、これは便宜的に私が持っているものです。 – Promit

+0

アセンブリは[Windir] \ assembly \ GAC_MSIL \ [DllNameWithout.dll] \ _ \ [DllNameWid.dll]のように名前が付けられているため、[DllNameWithout.dll] – Sonhja

2

注意する必要があります。アセンブリは%windir%\ assembly \ GACフォルダ以上にインストールできます。私のアセンブリは、%windir%\ assembly \ GAC_MSILにインストールされることが最も多いです。 %windir%\ assembly \を検索するだけでOKです。

関連する問題