Pagina principala » HOWTO » De ce nu puteți dezinstala simultan mai multe programe în Windows?

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

    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 permite să le dezinstalați 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 web 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 vă împiedică Windows să dezinstalați sau să eliminați simultan mai multe programe? Care este motivul din spatele acestui fapt? Va distruge un sistem intern?

    Nu vreau să dezinstalez simultan mai multe programe, ci doar caut motivul (motivele) de ce nu ar fi o opțiune.

    Ce este ceea ce 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, ultrasubia:

    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 fost acordată o prioritate față de viteză.

    Unul dintre motive .msi instalatorii sunt atât de lenți, deoarece fișierele de răsturnare sunt create 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 î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 în acest fel deoarece nu utilizează motorul MSI. Dar din cauza acestei decizii de proiectare a siguranței, acesta este probabil motivul appwiz.cpl insistă asupra faptului că trebuie să fie solicitat simultan un singur program de dezinstalare.

    CCleaner vă permite să lansați programele de dezinstalare fără a aștepta ca acestea să se termine î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 de pe întregul sistem (adesea partajate).

    Majoritatea programelor de dezinstalare urmăresc ce schimbă, astfel încât să poată reveni cu succes în cazul unei eșecuri. Dacă cineva nu este conștient de toate modificările făcute (de alte programe de dezinstalare), atunci ar putea să facă lucrurile în mod accidental 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 care trebuie utilizați (pe Windows) pentru a evita problemele ca acestea.


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