使用WiX将文件夹安装到ALLUSERS(不是快捷方式!)

时间:2013-07-01 15:09:25

标签: wix wix3.7

我有一个MSI文件正在安装一个包含大量文件的文件夹。我有一个位置,我将文件放在:

Windows XP: C:\ Documents and Settings \ All Users \ Documents \ MyFolder

Windows 7: C:\用户\公共\文件\ MyFolder文件

问题在于我不想对这些路径进行硬编码,但无论我在哪里看都无法找到如何做到这一点,因为我看到的每个地方都在谈论为所有用户制作快捷方式,这是 我想做什么。如何将文件夹安装到“所有用户”位置?

这样的事情:

<PropertyRef Id="WIX_DIR_COMMON_DOCUMENTS" />

<Directory Id="TARGETDIR" Name="SourceDir">
  <Directory Id="WIX_DIR_COMMON_DOCUMENTS">
    <Directory Id="MyFolder" Name="MyFolder">

1 个答案:

答案 0 :(得分:6)

Windows Installer没有该文件夹的property,但WiX提供的自定义操作可以。{/ p>

根据OSInfo custom actions

的文档
  1. 引用链接器的WixUtilExtension扩展。
  2. 通过引用定义属性:

    <PropertyRef Id="WIX_DIR_COMMON_DOCUMENTS" />
    
  3. 然后,在TARGETDIR目录下的某个位置定义目录。例如:

        <Directory Id="TARGETDIR" Name="SourceDir">
          <Directory Id="WIX_DIR_COMMON_DOCUMENTS">`
            <Directory Id="MyFolder" Name="MyFolder" />`
          </Directory>`
        </Directory>`