If-Koubou

De ce nu puteți dezinstala simultan mai multe programe în Windows?

De ce nu puteți dezinstala simultan mai multe programe în Windows? (Cum să)

Să presupunem că aveți o mică oră de programe pe care doriți să le dezinstalați pe sistemul dvs. Windows, dar Windows vă va dezinstala numai unul câte unul. De ce este asta? Ce vă oprește să dezinstalați simultan mai multe programe?

Sesiunea de întrebări și răspunsuri din ziua de astăzi vine de la amabilitatea SuperUser - o subdiviziune a Stack Exchange, o grupare bazată pe comunitate a site-urilor Q & A.

Intrebarea

Cititorul SuperUser Jeroen Bollen vrea să știe de ce o persoană nu poate dezinstala simultan mai multe programe în Windows:

De ce Windows vă împiedică să dezinstalați sau să eliminați simultan mai multe programe? Care este motivul din spatele acestui fapt? Va distruge un sistem intern?

Nu doresc să dezinstalez simultan mai multe programe, ci doar caut motivele pentru care nu ar fi o opțiune.

Ce este faptul că oprește oamenii să dezinstaleze mai multe programe simultan în Windows?

Răspunsul

Utilizatorii SuperUser ultrasawblade și techie007 au răspunsul pentru noi. În primul rând, ultrasawblade:

Dacă citiți ceva despre cum funcționează sistemul de instalare Windows, este evident că au aplicat câteva idei din bazele de date tranzacționale pentru instalarea și întreținerea programului, fără a mai menționa că .msi fișierele în sine sunt o bază de date.

Întotdeauna există întrebări în proiectarea oricărei baze de date - doriți viteză sau precizie / siguranță? Dat fiind faptul că instalatorii pot modifica configurația unui sistem și că o nerespectare ar putea face sistemul inoperabil, siguranța a dat o prioritate față de viteză.

Unul dintre motive .msi instalatorii sunt atât de lenți, deoarece fișierele rollback sunt făcute pentru fiecare fișier etc., care vor fi modificate, apoi șterse ulterior, permițând ca orice modificare să fie "derulată înapoi" dacă ceva nu merge în mijlocul lucrurilor (cum ar fi o întrerupere a alimentării sau accidente de sistem).

Acum, cred că motorul MSI însuși impune instalarea, modificarea sau eliminarea unui singur program la un moment dat. Dacă încercați să rulați un .msi fișierul în timp ce altul se dezinstalează, de exemplu, acesta nu se va executa sau va aștepta ca procesul de dezinstalare care rulează în prezent să se termine. Instalatorii non-MSI nu se pot comporta astfel, deoarece nu folosesc motorul MSI. Dar din cauza acestei decizii de proiectare a siguranței, acesta este probabil motivul pentru care appwiz.cpl insistă asupra faptului că este permisă doar primirea unui program de dezinstalare.

CCleaner vă permite să lansați programele de dezinstalare fără a aștepta terminarea celor care rulează înainte, însă instalatorii MSI nu vor funcționa în paralel datorită celor de mai sus.

Urmat de răspunsul de la techie007:

Acest lucru este valabil numai pentru programele care utilizează sistemul Windows Installer.

Dacă un program folosește propriile sisteme de instalare, nu există nimic care să te oprească de a rula un alt program de dezinstalare în același timp.

Windows Installer limitează numărul de instanțe pentru a evita ca conflictele să fie făcute de mai multe programe în timp ce modifică setările și fișierele la nivelul întregului sistem (adesea partajate).

Majoritatea programelor de dezinstalare urmăresc ce schimbă, astfel încât să poată reveni cu succes în cazul în care există un eșec. Dacă cineva nu este conștient de toate modificările făcute (de alte programe de dezinstalare), atunci ar putea să facă lucrurile LUMINĂ dacă încearcă să revină o instalare nereușită.

Sistemul Windows Installer a fost creat cu intenția de a fi un sistem unificat pentru toți dezvoltatorii de aplicații de utilizat (pe Windows) pentru a evita astfel de probleme.

Aveți ceva de adăugat la explicație? Sunați în comentarii. Doriți să citiți mai multe răspunsuri de la alți utilizatori de tehnologie Stack Exchange? Check out discuția completă aici.