如何创建Windows Installer [英] How to create windows installer

查看:157
本文介绍了如何创建Windows Installer的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

基本上,我们以手动安装程序(Windows powershell脚本)的形式发布更改/修复.它将通过读取配置文件值在特定位置安装指定的.dll和SQL脚本文件(我们将在此文件中配置.dll& Sql脚本位置).相同的powershell脚本具有卸载代码以回滚特定的重载组.

Basically we are releasing our changes/fixes in the form of manual installer (Windows powershell script). It will install specified .dll and SQL script files at particular locations by reading config file values (We will configure .dll & Sql script locations in this file). The same powershell script has uninstallation code to rollback particular chage set.

是否可以根据上述要求创建Windows安装程序的任何选项或机制?

Is there any option or mechanism to create Windows installer for above requirement?

推荐答案

简短版本 :已经有很多答案-我主要只是向其中添加一些链接 现有答案. 以下是我先前关于 主题 .

Short Version: Lots of answers already - I'll primarily just add some links to existing answers. Here is a previous short answer of mine on the topic.

更高的凝视性" :以上答案具有更简单的格式,其中列表视图最多当前重要的部署工具.匆匆?测试这些,选择一个.下面是更多详细信息和一些进一步的讨论".

Higher "glanceability": The above answer features a simpler format with a list view of the most important current deployment tools. In a rush? Test these, chose one. Below are more details and some further "discussion".


部署工具

有许多工具可以用来创建创建各种类型的安装程序/setup.exe文件.以下是一些链接的简要说明:


Deployment Tools

There are many tools available to create create installers / setup.exe files of various kinds. Here are some links to brief descriptions of most of them:

  • Non-MSI installer tools: http://www.installsite.org/pages/en/tt_nonmsi.htm
  • Windows installer tools: http://www.installsite.org/pages/en/msi/authoring.htm
  • Sys-admin tools for deployment: http://www.installsite.org/pages/en/msi/admins.htm (for completeness, not really relevant for you)
  • UPDATE: On the topic of multi-platform installers: Does an universal cross-platform installer exists?

我建议您选择MSI.使用哪种特定工具不太明显 .有关某些工具的优缺点的一些链接,请参见下面的最后一部分.

I would recommend to go for MSI. What specific tool to use is less obvious. See last section below for some links with descriptions of strengths and weaknesses of different tools.

MSI(Windows安装程序)企业部署的标准,因为它提供了

MSI (Windows Installer) is the standard for corporate deployment since it offers a number of corporate benefits of major significance compared to previous installation technologies. The benefits center around reliable remote management and standardization - crucial corporate deployment concerns.

简而言之,最重要的,特定的好处可能是:

In brief the most important, specific benefits are probably:

  1. 可靠的静默运行(标准化和完全可抑制的GUI)
  2. 明显可用的卸载(处理旧版设置时的噩梦)
  3. 透明度(安装程序的半透明和可检查性质-编译后的CA除外)
  4. 提升的安装权限(没有混乱的临时管理员权限)
  5. 标准化命令行(不搜寻秘密"开关)
  6. 管理安装 (文件摘录-企业重新包装必不可少的内容
  7. 详细记录(确实有用且很冗长:-))
  8. 标准化的程序包定制(转换-数据库片段)
  9. 回滚支持(可以撤消安装失败的更改)
  10. 库存(管理和报告:已安装产品和位置的完整注册)
  11. Active Directory/GP集成
  1. Reliable silent running (standardized & completely suppressible GUI)
  2. Implicitly available uninstall (a nightmare when dealing with legacy setups)
  3. Transparency (installer's semi-transparent and inspectable nature - except compiled CAs)
  4. Elevated installation rights (no messy temporary admin rights)
  5. Standardized command line (no hunting for "secret" switches)
  6. Administrative installation (file extract - essential for corporate repackaging)
  7. Verbose logging (helpful and verbose indeed :-) )
  8. Standardized package customization (transforms - database fragments)
  9. Rollback support (can undo changes for failed installs)
  10. Inventory (management and reporting: full registration of what is installed and where)
  11. Active Directory / GP integration

总的来说,这产生了MSI的整体优势: 可靠,远程 大型系统管理员的部署管理, 公司环境 .尽管具有技术优势,但仍具有关键优势 复杂性和古怪性.

Altogether this yields MSI's overall benefit: reliable, remote management of deployment for busy system administrators in large, corporate environments. Crucial benefits, despite the technology's complexity and quirkiness.

许多人发现应对该技术具有挑战性-一些MSI反模式的非常奇怪的即席描述,位于底部(底部)-问题的背景是存在的,但是确实存在-有时事情会写成一时冲动,也让任何人都在写东西感到惊讶-很棒,事实并非如此,只是务实的细节.第一个链接也是如此.

Many find the technology challenging to deal with - there are some common pitfalls (and I wrote a very odd, ad-hoc description of some MSI anti-patterns towards the bottom here - out of context for the question, but there it is - sometimes things get written in the spur of the moment to the surprise of whoever is writing too - great it is not, just pragmatic details. Same goes for the first link).

链接的serverfault答案(以上这里)对这些公司MSI收益的详细描述,以及一些需要注意的挑战.

The linked serverfault answer (above and here) features a much more elaborate description of these corporate MSI benefits along with some challenges to be aware of.

相同的serverfault问题具有第二个答案,描述了MSI文件中的常见设计错误.一个非常混乱的大脑转储".

The same serverfault question has a second answer describing common design errors in MSI files. A really messy "brain dump".

我应该指出,Microsoft提供的用于打包的新平台现在是 MSIX .但是,MSI在企业部署领域具有很高的渗透率,因此,MSI持续多长时间还有待观察.所有已建立的部署工具都在努力支持MSIX和AppX以及其他部署技术(也包括虚拟化).

I should point out that the new platform for packaging from Microsoft now is MSIX based on the AppX application framework. However MSI has high penetration in the corporate deployement world, so it remains to be seen how long MSI will be relevant. All established deployment tools are working to support MSIX and AppX and other deployment technologies (also virtualization).

插入一些链接 :

Slipping in some links:

  • Auto-update packages / MSIX and other formats
  • https://www.advancedinstaller.com/msix-introduction.html


AppV

在现实的企业环境中 AppV (应用程式虚拟化/应用程式串流)已变成常见的部署解决方案(Tim Mangan's博客).


AppV

And in the real, corporate world AppV (application virtualization / application streaming) has turned into a common deployment solution (Tim Mangan's blog).

创建MSI的行业领导者通常是 高级安装程序 Installshield

Industry leaders for MSI creation are generally Advanced Installer, Installshield, PACE Suite, and the open source solution WiX (with its commercial branch Firegiant) - which you seem somewhat familiar with.

我只会为您提供一些以前链接的答案的链接,其中包含一些观点和事实,这些链接对这些不同的工具是不加掩饰的,目的是尽力而为",帮助人们决定他们需要的工具,却没有声称自己是正确的".这始终是一项危险的工作-多年的经验意味着习得知识,但也预示着习得的不良习惯和怪癖.结果是有缺陷的专业人员的诚实意见,他们只能提供帮助:

I'll just give you some links to previously written answers with some opinions and facts in an indiscreet mix about these different tools - it is intended as a "best effort" to help people decide what tool they need, without claiming to be "right". This is always a dangerous endeavor - years of experience mean acquired knowledge, but also bodes for acquired bad habits and quirks. What results are honest opinions from a flawed professional who can only offer a willingness to help:

  • What installation product to use? InstallShield, WiX, Wise, Advanced Installer, etc - a subjective attempt at an objective evaluation of the strengths and weaknesses of the currently established deployment products.
  • Quick start for WiX - a messy little answer with suggestions on how to hit the ground running with WiX that has been upvoted more than usual. It must have been helpful. I like the "hello world" style sample I link to on codeproject which other have mentioned as well.
  • Windows Installer and the creation of WiX (quick and unofficial overview of how WiX came about and how it works. Also a part on "the unavoidable complexity of deployment").
  • How can I compare the content of two (or more) MSI files? (some brief information on the MSI format, how to inspect MSI files and retrieve and inspect the content in them using free tools).
  • How do I avoid common design flaws in my WiX / MSI deployment solution? (some well-meant but messy advice on how to avoid problems in your MSI-based deployment solution).

这篇关于如何创建Windows Installer的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆