";系统文件夹”;在WIX和C#中

本文关键字:WIX quot 系统文件夹 | 更新日期: 2023-09-27 18:29:40

我用WiX创建的安装程序使用SystemFolder变量将DLL以及C#应用程序安装到另一个文件夹中。我想直接引用应用程序中的DLL。我需要查找注册表项来查找SystemFolder在哪里吗?

";系统文件夹”;在WIX和C#中

不,您不需要查询注册表。Windows安装程序有一系列内置属性,可以自动解析到特殊的已知位置,如SystemFolder。

有关更多常规信息,请参阅系统文件夹属性。对于WiX,只需创建一个Directory元素作为TARGETDIR Directory元素的直接子元素:

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

如果你已经知道这一点,并且想知道如何从C#引用DLL,SystemFolder在搜索路径中,所以我不确定你为什么必须这样做。如果是我,我会将C#编译为x86(AnyCPU现在有些过时)并使用:

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