【发布时间】:2018-08-17 11:41:38
【问题描述】:
我已经使用 WixTool 3.10 构建了一个简单的 MSI 文件。
其中一项功能是复制主机上已存在的文件。
当我通过远程桌面安装此 msi 时,一切正常。
但是,如果我通过 SSH 登录并运行此 MSI,则不会复制该文件。
这是我的 wxs 文件的简化版本:
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Product Id="*" Name="my product" Language="1033" Version="1.0" Manufacturer="Allen"
UpgradeCode="PUT-GUID-HERE">
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
<MediaTemplate EmbedCab="yes" />
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLFOLDER" Name="My Folder">
</Directory>
</Directory>
</Directory>
<Property Id="FILEA">
<DirectorySearch Id="SearchSourceDir" Path="[SOURCEDIR]">
<FileSearch Name="fileA.txt" />
</DirectorySearch>
</Property>
<Component Id="cmpCopyFile" Guid="*" Directory="INSTALLFOLDER">
<CopyFile Id="CopyFileA" SourceProperty="FILEA" DestinationProperty="INSTALLFOLDER"/>
</Component>
<Feature Id="FeatureCopyFile" Title="Copy file" Level="1">
<ComponentRef Id="cmpCopyFile" />
</Feature>
</Product>
</Wix>
这是我用于安装的命令:
msiexec /i test.msi /l*v install.log
在日志中,我可以看到功能和组件已安装,但是文件没有被复制。
这是预期的行为吗?感谢您提供任何帮助或建议。
更新: 这是本地安装和远程安装的日志 install_local.log install_remote.log
【问题讨论】:
-
显而易见的问题是这个文件中有什么,如果它可以通过其他更可靠的机制安装 - 例如它是 XML 或 INI 文件。
-
@SteinÅsmul 这是一个纯文本配置文件,将与 msi 安装程序一起以 zip 文件的形式提供。
-
在下面添加了一些 cmets 和建议。我不熟悉为此目的使用 SSH。我不确定它是如何运作的。
-
我尝试修改聊天室权限让你进入,但还是不行。
标签: wix windows-installer wix3.10