简体   繁体   English

为什么程序安装是一个过程?

[英]why is program installation a process?

this may very well be a stupid question, but when i was asked something much simplier then this, i didn't have much of an answer... 这可能是一个愚蠢的问题,但是当我被问到那么简单时,我却没有太多的答案...

why are most programs installed via some several step process of adding and changing and whatnot? 为什么大多数程序是通过添加和更改的几个步骤安装的,什么都没有? we have programs that can be ran straight from a self contained executable, but a large portion of programs cannot. 我们有可以直接从一个自包含的可执行文件运行的程序,但是很大一部分程序不能。 why is this? 为什么是这样? is it due to the programs growing exponentially by needing to include everything within itself? 是否由于程序需要将所有内容都包含在内而呈指数增长? if that is the case, it is so difficult to design an OS from the ground up to be completely modular... ie. 如果是这样,那么从头开始将操作系统设计为完全模块化是非常困难的。 having an OS with a standard set of modules, that can be accessed and used from any 'standalone program' that doesn't require a lengthy install. 具有一个带有标准模块集的操作系统,可以从不需要冗长安装的任何“独立程序”中进行访问和使用。

thanks David Kirsch. 感谢David Kirsch。

It's really a question of how complicated your program is. 这实际上是程序有多复杂的问题。 Many windows programs have dependencies on Visual Studio C++, .Net, Java etc. runtimes that are not delivered by the substrate OS. 许多Windows程序都依赖Visual Studio C ++ 、. Net,Java等运行时,这些运行时不是由底层操作系统提供的。 This means that for your programs to work those components must already be on the system. 这意味着要使程序正常工作,这些组件必须已经在系统上。

If those prerequisites are missing, then your program won't even load, so you can't even get your program to check for them and tell the user to go and get them. 如果缺少这些先决条件,那么您的程序甚至都不会加载,因此您甚至无法让程序检查它们并告诉用户继续获取它们。 This is where an installer comes in, as it generally doesn't have any prerequisites, but is able to sniff out the ones your progam needs and can either tell you to go and get them, or try to install them for you. 这是安装程序出现的地方,因为它通常没有任何先决条件,但可以嗅出您的程序需要的程序,并且可以告诉您去购买它们,或者尝试为您安装它们。

Also many programs need some logical, as well as physical, installation work to be done as part of deployment. 另外,许多程序需要一些逻辑的以及物理的安装工作才能作为部署的一部分完成。 This might mean registry changes (such as COM registration), changes to IIS (setting up a web application and virtual directory), or changes to the Service Control manager (setting up Windows Services). 这可能意味着更改注册表(例如COM注册),更改IIS(设置Web应用程序和虚拟目录)或更改服务控制管理器(设置Windows Services)。

In short, unless your program is extremely self-contained and has no external dependencies, an installer is the only way to get your application on the desktop. 简而言之,除非您的程序非常独立并且没有外部依赖性,否则安装程序是将应用程序显示在桌面上的唯一方法。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM