首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >让安装程序检测要安装的驱动器

让安装程序检测要安装的驱动器
EN

Stack Overflow用户
提问于 2010-08-24 23:40:05
回答 1查看 67关注 0票数 0

我们的其中一个程序需要安装C盘或D盘。我需要安装所做的是,如果安装检测到具有特定文件夹结构的D盘,如下所示:

D:\AppData

如果它找到了它,它会把它安装在那里。如果找不到,它会安装在这里:

C:\AppData

我使用的是VS 2008

EN

回答 1

Stack Overflow用户

发布于 2010-08-25 00:32:53

将安装程序硬编码到任何特定的驱动器上是违反windows installer最佳实践的。这就是为什么我们使用像WindowsVolume和ProgramFilesFolder这样的东西。

也就是说,自定义操作在安装时有条件地提供覆盖是可以的,前提是如果自定义操作无法找到特定的覆盖,它将返回到标准的最佳实践。

例如

优先考虑命令行默认值。尝试设置D:\AppData尝试设置C:\AppData否则默认WindowsVolume\AppData (不是通过自定义操作完成的,内置于目录表中)

然后提供一个对话框,允许用户以交互方式重写

当我说“尝试”时,我的意思是编写一些代码来查看是否存在该字母的固定磁盘

现在你的问题是,听起来你正在使用Visual Studio部署项目,坦率地说,这个工具不会给你带来你需要的灵活性(如果没有一些聪明的构建后处理)来按照你需要的方式插入自定义操作。假设您的工具将支持您所需的内容,请编写一个自定义操作:

在UI和Execute Sequence中计划开销之前初始化(以支持静默安装)

如果属性已经设置(与命令行相关),并且如果没有安装产品(您不能在修复或维护操作期间更改目录;它是固定的),则将其设置为不运行

将其安排为只运行一次(这样CA就不会覆盖对话框所做的任何更改)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3558222

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档