2010-05-04 41 views
1

为了在我的游戏中支持Window Vista,我更改了XP和Vista安装时保存文件的位置(从Program Files到My Documents)。如何在Wix Installer中移动用户内容

现在我希望能够将当前XP用户从旧位置移动到新位置。

我想我可以通过升级检查代码正确触发此像这样:

<Upgrade Id="PLACE-GUID-HERE"> 
    <UpgradeVersion OnlyDetect="yes" Minimum="$(var.ProductVersion)" IncludeMinimum="no" Property="NEWERVERSIONDETECTED" /> 
    <UpgradeVersion OnlyDetect="no" Minimum="1.1.0" IncludeMinimum="yes" Maximum="$(var.ProductVersion)" IncludeMaximum="no" Property="OLDERVERSIONBEINGUPGRADED" /> 
    <UpgradeVersion OnlyDetect="no" Maximum="1.1.0" IncludeMaximum="no" Property="MOVESAVEFILESUPGRADED" /> 
</Upgrade> 

其中1.0.x的是旧的方式和1.1.x的将是新的方式,所以我可以做一些在一个基于MOVESAVEFILESUPGRADED的自定义操作,但问题的核心,我不知道如何将未安装的文件从一个位置移动到另一个位置。

回答

1

我不认为有一个内置的自定义操作,将做到这一点。如果你写自己的最好使用DLL,但VBScript或BAT文件也将完成这项工作。

This might help

+0

该vbscript选项接缝,正是我所需要的 – 2010-05-04 16:05:04

2

使用的CopyFile元素。自定义操作是矫枉过正,VBScript自定义操作不可靠。请参阅http://www.joyofsetup.com/2007/06/07/when-vbscript-and-jscript-custom-actions-are-even-more-evil/

+0

从博客文章好处关于脚本shortings。此外,我真正在移动配置的系统是XP而不是Vista,因此在游戏过程中而不是在安装程序中执行它可能是有意义的。我正在考虑安装程序,因为它是一次性门控过程,诗歌必须检查每次运行。 – 2010-05-04 17:23:12

相关问题