我有一个组件,我需要安装只有存在注册表项,这意味着已经安装了一个应用程序.
我需要将注册表项的值(它是一个目录)分配给属性,然后使用此属性从中复制文件.
到目前为止,我有以下脚本,但出现错误"系统无法找到文件'[MYTESTDIR] fileToCopy.dat'."
真的很感激任何帮助.
<Property Id="MYTESTDIR">
<RegistrySearch Id="NetFramework20"
Root="HKLM"
Key="SOFTWARE\TEST\VALUE\1.00"
Name="MyName"
Type="directory" />
</Property>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="TEST" Name="Test">
<Component Id="MyComponent" Guid="E5FF53DE-1739-42c4-BE37-60F810C9CD69">
<Condition>MYTESTDIR</Condition>
<File Id="fileToCopy.dat" Name="fileToCopy.dat" Source="[MYTESTDIR]fileToCopy.dat">
<CopyFile Id="fileToCopy.datCopy" DestinationProperty="WEBSERVICEBINFOLDER" />
</File>
</Directory>
</Directory>
</Directory>
<Feature Id="MyFeature" Title="MyFeature" Level="1">
<ComponentRef Id="MyComponent" />
</Feature>
Run Code Online (Sandbox Code Playgroud)
根据我对Wix Schema文档的阅读,您的问题是您将CopyFile元素嵌套在File元素下.抛弃File元素,只需让CopyFile位于Component下:
<Component Id="MyComponent" Guid="E5FF53DE-1739-42c4-BE37-60F810C9CD69">
<Condition>MYTESTDIR</Condition>
<CopyFile Id="fileToCopy.datCopy" SourceName="[MYTESTDIR]fileToCopy.dat" DestinationProperty="WEBSERVICEBINFOLDER" />
</Component>
Run Code Online (Sandbox Code Playgroud)
你拥有它的方式,嵌套在File下,Wix在构建期间在你的系统上寻找文件 - 而不是设置一个在安装时运行的复制命令.
| 归档时间: |
|
| 查看次数: |
6807 次 |
| 最近记录: |