2012-03-30 25 views
9

WiX ile oluşturduğum bir yükleyici, SystemFolder değişkenini ve bir C# uygulamasını başka bir klasöre kullanarak bir DLL yükler. Doğrudan uygulamadan DLL başvurmak istiyorum. SystemFolder'un nerede olduğunu bulmak için kayıt defteri anahtarlarına bakmam gerekiyor mu?"SystemFolder" WIX ve C#

cevap

13

Hayır, kayıt defterini sorgulamanız gerekmez. Windows Installer, SystemFolder gibi özel olarak bilinen konumlara otomatik olarak çözümlenen bir dizi yerleşik özelliğe sahiptir.

Daha genel bilgi için bkz System Folder Properties. WiX için, sadece HEDEFDIR Rehber öğesinin doğrudan alt öğesi olarak bir dizin öğesi oluşturun: zaten bunu biliyor ve C# DLL başvuru nasıl bilmek istiyorsanız

<Directory Id="TARGETDIR" Name="SourceDir"> 
    <Directory Id="SystemFolder" Name="SystemFolder" /> 
</Directory> 

, SystemFolder Öyle arama yolunda Neden yapman gerektiğinden emin değilim. Eğer ben olsaydım, C# x86 olarak derlerdim (AnyCPU şu anda bir vogue dışındadır) ve

string myDllPath = Path.Combine(System.Environment.SystemDirectory, "my.dll");