Úvodná » ako » Prečo nie je možné súčasne odinštalovať viac programov v systéme Windows?

    Prečo nie je možné súčasne odinštalovať viac programov v systéme Windows?

    Predpokladajme, že máte malú hordu programov, ktoré chcete odinštalovať v systéme Windows, ale systém Windows ich nechá odinštalovať len jeden po druhom. Prečo to je? Čo vás bráni v odinštalovaní viacerých programov súčasne?

    Dnešná relácia otázok a odpovedí sa k nám pridelí zdvorilosťou SuperUser - podskupiny Stack Exchange, zoskupenia webových stránok typu Q & A.

    Otázka

    Čítačka SuperUser Jeroen Bollen chce vedieť, prečo nie je osoba schopná súčasne odinštalovať viacero programov v systéme Windows:

    Prečo vás Windows bráni v odinštalovaní alebo odstránení viacerých programov súčasne? Aká je myšlienka za tým? Bude to narušiť vnútorný systém?

    Nechcem odinštalovať viac programov súčasne, som jednoducho hľadá dôvod (y), prečo by to nebola možná.

    Čo zabraňuje ľuďom odinštalovať súčasne viacero programov v systéme Windows?

    Odpoveď

    Superuser prispievatelia ultrasawblade a techie007 majú odpoveď pre nás. Prvýkrát, ultrasawblade:

    Ak čítate niečo o tom, ako funguje inštalačný systém Windows, je zrejmé, že použili niektoré nápady z transakčných databáz na inštaláciu a údržbu programu, nehovoriac o tom, že .msi samotné súbory sú databáza.

    Vždy existuje otázka pri navrhovaní akejkoľvek databázy - chcete rýchlosť alebo presnosť / bezpečnosť? Vzhľadom na to, že inštalatéri môžu zmeniť konfiguráciu systému a že nehoda by mohla spôsobiť nefunkčnosť systému, bezpečnosť bola priradená prednosť pred rýchlosťou.

    Jedným z dôvodov, prečo .msi inštalatérov sú tak pomalé, pretože sú vytvorené súbory s vrátením súborov pre každý súbor atď., ktoré budú upravené a následne odstránené, čo umožní, aby sa akékoľvek zmeny "vrátili", ak sa niečo pokazí uprostred vecí (napríklad výpadok napájania alebo zrážka systému).

    Teraz verím, že samotný motor MSI presadzuje inštaláciu, úpravu alebo odstránenie iba jedného programu naraz. Ak sa pokúsite spustiť .msi súboru, zatiaľ čo iný sa odinštaluje, napríklad buď nebude spustený, alebo čaká na ukončenie procesu odinštalovania, ktorý práve prebieha. Inštalatéri, ktorí nie sú MSI, sa nemusia správať týmto spôsobom, pretože nepoužívajú motor MSI. Ale kvôli tomuto rozhodnutiu o návrhu bezpečnosti je to pravdepodobne dôvod appwiz.cpl trvá na tom, aby sa povolilo naraz iba jeden odinštalačný program.

    CCleaner vám umožní spustiť odinštalátory bez toho, aby ste čakali na predošlé spuštené programy, ale inštalatéri MSI pravdepodobne nebudú pracovať paralelne kvôli vyššie uvedeným.

    Nasledovala odpoveď od techie007:

    To sa skutočne týka iba programov, ktoré používajú systém Windows Installer.

    Ak program používa vlastné (ne) inštalačné systémy, potom vám nič nebráni v tom, aby ste súčasne spustili iný odinštalačný program.

    Inštalačná služba Windows Installer obmedzuje počet inštancií, aby sa zabránilo konfliktu viacerých programov, zatiaľ čo sa menia nastavenia a súbory (často zdieľané) v celom systéme.

    Väčšina odinštalátorov sleduje, čo sa menia, aby sa mohli úspešne vrátiť, ak dôjde k poruche. Ak si nie ste vedomí všetkých vykonaných zmien (inými odinštalátormi), môže to skutočne robiť veci, ak sa pokúsi vrátiť neúspešnú inštaláciu.

    Systém Windows Installer bol vytvorený s úmyslom byť jednotným systémom pre všetkých vývojárov aplikácií, ktoré sa majú používať (v systéme Windows), aby sa zabránilo problémom, ako sú tieto.


    Máte niečo doplniť vysvetlenie? Znie to v komentároch. Chcete sa dozvedieť viac odpovedí od iných používateľov technickej úrovne Stack Exchange? Pozrite sa na celý diskusný príspevok tu.