文件未在WIX中非管理员用户的Appdata文件夹中提供



我已经在wix安装程序的APPDATA位置中发送了一些文件。我正在使用以下代码。当在管理模式下运行安装程序时,它正在该位置安装txt文件。但该文件不适用于非管理员用户。请帮我解决这个问题。

<CustomAction Id="PropertySource" Property="APPPATH" Value="[LocalAppDataFolder]APP1APP2" /><Directory Id="APPPATH">
<Directory Id="Application">
    <Component Id="comp_txt" Guid="{10E0A568-3E37-49BD-A70B-8D7F63A17011}">
        <File Id="file_234487642387111122391332" Source="......App.txt" />
    </Component>
</Directory></Directory>

InstallExecuteSequence和InstallUISequence 下

<Custom Action="PropertySource" Sequence="1278" />

LocalAppDataFolder已经是有效的目录ID。您不需要自定义操作或APPDATA属性。只需以常规方式将app1和app2定义为LocalAppDataFolder的子目录,即通过嵌套Directory元素。

<Directory Id="TARGETDIR" Name="SourceDir">
    <Directory Id="LocalAppDataFolder">
        <Directory Id="app1folder" Name="App1">
            <Directory Id="app2folder" Name="App2" />
        </Directory>
    </Directory>
</Directory>

然后将您的组件安装到所需的文件夹中:

<DirectoryRef="app2folder">
    <Component Id="App.txt">
        <File Source="......App.txt" />
    </Component>
</DirectoryRef>

还需要注意的是,您可以使用-b选项将基本路径传递给light.exe,而不是使用像......App.txt这样的笨拙路径:

light.exe -o mysetup.msi -b pathtomyfiles *.wixobj

然后可以使用相对于Source中的基本路径的路径。

最新更新