Hvad er forskellen mellem en stand-alone og installeret eksekverbar fil?
Mens de fleste af os er tilfredse med at gå med den 'prøvede og sande' proces med at installere de eksekverbare filer til vores yndlingssoftware, er det virkelig nødvendigt at gøre det? Kunne vi faktisk udtrække de samme eksekverbare filer i stedet for at installere dem og køre dem på samme måde som deres frittstående fætre?
Dagens Spørgsmål & Svar session kommer til os med venlig hilsen af SuperUser-en underafdeling af Stack Exchange, en community-driven gruppe af Q & A-websteder.
Spørgsmålet
SuperUser-læser Tom Tyrkiet ønsker at vide, hvad forskellen mellem en stand-alone og installeret eksekverbar fil er:
Jeg har i hvert fald bemærket i Windows, at du kan downloade en direkte, statisk forbundet eksekverbar fil og starte den direkte eller skrive dit eget program og udføre det (selv dynamisk) uden at skulle installere det.
Det bringer mig til mit hovedpunkt ... hvad er formålet med installationsprocessen? Jeg mener foruden måske Windows-registreringsdatabasen. For praktisk og brugsmæssigt formål er det imidlertid muligt at have et enkelt, uafhængigt, stand-alone program, som kan køres, gemmes på ikke-flygtig lagring og fås via filsystemet uanset hvilken enhed den er på og udføres på OS.
Så hvad er den store deal med alle "installer denne" forretning, hvis mange fantastiske programmer af stort set enhver størrelse kan fungere perfekt uden at gå igennem en installationskonfiguration? Det pusleser mig lidt, og bortset fra en database eller andre metadata / adgangskonfigurationssystemer, hvad er den reelle forskel her, hvis sidstnævnte (en installeret eksekverbar) udfører og virker på samme måde som en frittstående?
Er der en forskel her, jeg er ikke bekendt med et ikke-installeret program versus en installeret?
PS: Dette behøver ikke kun at gælde for Windows OSes, men alle der implementerer en lignende funktion.
Er der virkelig så meget forskel på stand-alone og installerede eksekverbare filer, eller er de mere ens, end vi måske tror?
Svaret
SuperUser bidragyder Wyatt8740 har svaret for os:
Kort svar: En stand-alone exe kræver ingen biblioteker installeret på computeren til at køre, og kræver ingen registreringsdatabaser eller andre komponenter.
En installeret fil kan være en selvstændig i en installationspakke, men er generelt afhængig af en række komponenter og biblioteker installeret sammen med det.
I mange tilfælde kan du ved hjælp af Universal Extractor (uofficiel opdatering: her) udtrække indholdet af et installationsprogram og køre et program uden administrative rettigheder i Windows. MSI installatører kan pakkes ud med lessmsi.
I de fleste andre operativsystemer kan alle programmer køres uden root / administrator privilegier, via brugerspecifikke "bin", "lib" og andre mapper i hjemmemappen. Personligt foragter jeg installatører mesteparten af tiden, fordi de gør det sværere for mig at bruge programmer uden administrative privilegier, når jeg ikke har dem. Men de pakkes på den måde af store virksomheder for at forenkle processen for den gennemsnitlige slutbruger.
Selvom vi har lært, at det er muligt at udtrække og køre nogle af vores yndlingssoftware som fristående eksekverbare filer, er der til tider ingen mulighed for at undslippe den gamle 'prøvede og sande' installationsproces for at kunne bruge et program, som vi kan lide eller har brug for vores system.
Har du noget at tilføje til forklaringen? Lyde af i kommentarerne. Vil du læse flere svar fra andre tech-savvy Stack Exchange brugere? Tjek den fulde diskussions tråd (med stærkt udvidede svar) her.