Windows 7 Windows 7中的安装

Windows 7 Windows 7中的安装,windows-7,installation,windows-installer,installshield,Windows 7,Installation,Windows Installer,Installshield,我必须迁移当前的软件安装,才能在Windows 7中安装 是Visual C++中的MFC应用程序。安装并不十分复杂,但确实有些复杂。它必须检测以前是否安装了其他软件来启动msi文件,如果没有安装,则让用户安装。有一些合并模块和嵌套msi,还有一些自定义操作(在DLL、vbscript等中)。我们的要求之一是非管理用户必须能够安装软件。并且最好在安装启动后无需同意任何消息 我认为现在完成的方式有点混乱,我不希望只是迁移,而是进行重构以使事情变得更好。所以我想要一些建议,一个有最佳实践的网站,一些

我必须迁移当前的软件安装,才能在Windows 7中安装

是Visual C++中的MFC应用程序。安装并不十分复杂,但确实有些复杂。它必须检测以前是否安装了其他软件来启动msi文件,如果没有安装,则让用户安装。有一些合并模块和嵌套msi,还有一些自定义操作(在DLL、vbscript等中)。我们的要求之一是非管理用户必须能够安装软件。并且最好在安装启动后无需同意任何消息

我认为现在完成的方式有点混乱,我不希望只是迁移,而是进行重构以使事情变得更好。所以我想要一些建议,一个有最佳实践的网站,一些书(最好是最新的关于Windows7安装的具体信息)。任何形式的帮助都将不胜感激

顺便说一句,我们现在正在使用InstallShield,但如果有更好的工具,我不介意换成它

有男孩使用过VisualStudio2010的InstallShield LE吗?值得一试吗

谢谢


Javier

安装程序有很多功能,包括您提到的功能。

我认为没有一本书只介绍Windows 7的安装。尽管有关于如何编写安装程序的文章

最好从以下几点开始:

用户不喜欢安装软件,因此现代安装体验需要简单、高效、无问题

如果你只做三件事…

  • 使设置尽可能简单和轻量级。请记住,用户不喜欢设置,他们会忍受它。仔细查看每一个问题、选项、页面和路径,并删除所有对完成设置不重要的内容
  • 针对所有安装方案进行设计,包括无人参与安装、脚本安装和卸载。为了实现高效的无人值守安装,请确保安装阶段之间有一个干净的间隔
  • 设计您的安装程序,以便用户能够自行解决安装问题,同时记录技术支持所需的信息,以防万一。请记住,安装是所有用户必须成功完成的一项任务
  • 作为应用程序的第一部分,应用程序的指南也值得一读。
    一篇较旧的文章讨论了将可执行文件和数据(每个用户和每台机器)分离,以及共享组件等


    在您的情况下,由于安装程序需要检测并安装丢失的其他组件,因此最好使用安装程序引导程序

    您有两个选择:

  • 使用引导程序提升,然后运行完整的提升设置
  • 仅当需要安装附加组件(应用程序的先决条件)时提升
  • 第二个选项仅适用于标准用户可以安装应用程序的情况,即按用户安装,而不是按机器或所有用户安装。在这种情况下,如果附加组件需要提升才能安装,并且至少有一个组件未安装,则启动提升过程以安装所有必备组件。完成后,您将作为标准用户继续安装应用程序


    关键是只显示一次UAC确认:如果每个先决条件都显示自己的UAC确认,那将非常烦人。

    谢谢vissi。但我更多的是寻找一本关于最佳实践和Windows7安装的书籍/文章。如果你推荐这个工具,请让我知道为什么你认为它比InstallShield好。好吧,在我看来,它有两个主要的优点:安装程序小(开销约100kb),InstallShield包的大小通常是几MB,它是可编写脚本的,并且有许多常用的插件,你可以检查.net framework、java、,等安装在机器上;您还可以按照自己喜欢的方式设置安装程序界面的样式。