似乎有很多复杂的事情要做 - 当原始卸载程序崩溃时,这也使得卸载变得困难。
为什么它不像这样简单:
- 将所有唯一文件解压到一个文件夹中。
- 将一些共享 dll/库解压(可选)到共享系统文件夹
- 设置一些注册表设置(可以在程序启动时完成)。
我知道这可能有点太多了过于简单化,但仍然......
我说的是更大的应用程序,如 Visual Studio、Office、Adobe suit、Maya 等。
答案1
在您的步骤 2 中,如果我安装了两个程序,并且它们都向共享文件夹添加了相同的文件,该怎么办?那么当我卸载其中一个程序时会发生什么?
安装程序并不难,它确实像您描述的一样简单。很难卸载一个程序并且没有其他程序共享的文件/注册表项不会中断。
跟踪文件和注册表设置的“引用计数”来处理共享组件的能力是安装程序“复杂性”的主要来源。