我有一个遗留应用程序直接安装到用户的c:驱动器,在目录中(如c:\ MyApp)。讨厌的东西。问题是,用户可以指定在第二个驱动器上进行第二次安装(例如e:\ MyApp),并且他们可以在任一目录中同时安装两个不同版本的应用程序。他们还可以决定在目录树的其他位置安装应用程序,但这些是最常见的两个位置。
我没有写这个计划。就我而言,它让小耶稣哭了。
我必须编写一个安装程序来为此方案添加模块,并且用户需要能够选择要在其上安装模块的安装。我以为我会在WiX中尝试这个。
我该怎么做?
我打算像
那样进行目录搜索<Property Id="MyAppInstallationSearch">
<DirectorySearch Id="MyAppDirectory" Path="C:\MyApp">
</DirectorySearch>
</Property>
然后:
<Directory Id="TARGETDIR" Name="MyAppInstallationSearch">
<Directory Id="INSTALLLOCATION" Name="AdditionalTools">
</Directory>
</Directory>
拥有安装位置。
那我该如何:
让搜索成为相对的,而不是绝对的? (文档规定可以这样做,我只是不知道如何)。
如果用户有多个位置,请选择要使用的安装位置?
答案 0 :(得分:1)
答案 1 :(得分:0)
我必须实现相同的功能,并使用外部UI处理程序来完全自定义安装过程。我还会显示一个向导页面,用户可以在其中选择要升级的版本。但要注意,这不是你可以在一两天内完成的事情。
我不知道您使用的是哪种编程语言,但如果您想使用.NET,则可以使用Wix3附带的开发工具基础。这些库可以在Wix安装的SDK文件夹中找到(您主要需要Microsoft.Deployment.WindowsInstaller.dll),文档位于doc目录的DTF.chm中。您还需要一个引导程序来安装.NET框架。
您还可以等到Wix 3.5,其中包括Burn,一个可以轻松自定义的boostrapper和外部UI处理程序。
HTH