Kāpēc Windows nevar atinstalēt vairākas programmas vienlaikus?

Satura rādītājs:

Kāpēc Windows nevar atinstalēt vairākas programmas vienlaikus?
Kāpēc Windows nevar atinstalēt vairākas programmas vienlaikus?
Anonim
Pieņemsim, ka jums ir neliela programma, kuru vēlaties atinstalēt savā Windows sistēmā, bet sistēma Windows ļaus tās vienreiz atinstalēt tikai vienu reizi. Kāpēc ir tā, ka? Kas pārtrauc jums vienlaicīgi atinstalēt vairākas programmas?
Pieņemsim, ka jums ir neliela programma, kuru vēlaties atinstalēt savā Windows sistēmā, bet sistēma Windows ļaus tās vienreiz atinstalēt tikai vienu reizi. Kāpēc ir tā, ka? Kas pārtrauc jums vienlaicīgi atinstalēt vairākas programmas?

Šodienas jautājumu un atbilžu sesija mums priecājas par SuperUser - Stack Exchange dalību, kas ir kopienas vadīta Q & A tīmekļa vietņu grupa.

Jautājums

SuperUser lasītājs Jeroen Bollen vēlas uzzināt, kāpēc persona nevar vienlaicīgi atinstalēt vairākas programmas Windows:

Why does Windows keep you from uninstalling or removing multiple programs simultaneously? What is the reasoning behind this? Will it mess up an internal system?

I do not want to uninstall multiple programs simultaneously, I am simply looking for the reason(s) why it would not be an option.

Kas tas liek cilvēkiem izvairīties no vairāku programmu vienlaikus atinstalēšanas sistēmā Windows?

Atbilde

SuperUser atbalstītāji ultrasawblade un techie007 ir atbilde mums. Pirmkārt, ultrasavienojums:

If you read anything about how the Windows installer system works, it is obvious that they applied some ideas from transactional databases to program installation and maintenance, not to mention that .msi files themselves are a database.

There is always the question in designing any database – do you want speed or accuracy/safety? Given that installers can modify a system’s configuration and that a mishap could render the system inoperable, safety has been given a priority over speed.

One of the reasons why .msi installers are so slow is because rollback files are made for each file, etc. that will be modified, then deleted afterwards, allowing any changes to be “rolled back” if something goes wrong in the middle of things (such as a power outage or system crash).

Now, I believe the MSI engine itself enforces installing, modifying, or removing only one program at a time. If you try to run an .msi file while another is uninstalling for example, it will either not run, or will wait for the currently running uninstall process to finish. Non-MSI installers may not behave this way since they do not use the MSI engine. But because of this safety design decision, this is probably why appwiz.cpl insists on letting only one uninstaller be called at once.

CCleaner allows you to kick off uninstallers without waiting for previously running ones to finish, but MSI installers will likely still not work in parallel due to the above.

Seko atbilde no techie007:

This really only applies to programs that use the Windows Installer system.

If a program uses their own (un)installer systems, then there is nothing stopping you from running another uninstaller at the same time.

The Windows Installer limits the number of instances to avoid conflicts being made by multiple programs while they are changing system-wide (often shared) settings and files.

Most uninstallers track what they are changing so they can roll back successfully if there is a failure. If one is not aware of all the changes being made (by other uninstallers), then it may actually make things WORSE if it tries to roll back a failed install.

The Windows Installer system was created with the intention of being a unified system for all application developers to use (on Windows) in order to help avoid problems like these.

Vai kaut ko pievienot paskaidrojumam? Skatieties komentāros. Vēlaties lasīt citas atbildes no citiem tehnoloģiju savvy Stack Exchange lietotājiem? Šeit skatiet pilnu diskusiju pavedienu.

Ieteicams: