Vad är skillnaden mellan en fristående och installerad körbar fil?
Medan de flesta av oss är nöjda att gå med den "beprövade" processen att installera körbara filer för vår favoritprogramvara, är det verkligen nödvändigt att göra det? Kunde vi faktiskt extrahera samma körbara filer istället för att installera dem, och köra dem på samma sätt som deras fristående kusiner?
Dagens Question & Answer-session kommer till oss med tillstånd av SuperUser-en indelning av Stack Exchange, en community-driven gruppering av Q & A-webbplatser.
Frågan
SuperUser-läsare Tom Turkiet vill veta vad skillnaden mellan en fristående och installerad körbar fil är:
Jag har lagt märke till att i Windows åtminstone kan du hämta en direkt, statiskt länkad körbar fil och starta den direkt, eller skriv ditt eget program och kör det (även dynamiskt) utan att behöva installera det.
Det leder mig till min huvudpunkt ... vad är syftet med installationsprocessen? Jag menar förutom kanske Windows-registret. För praktiska ändamål och användningsändamål är det dock möjligt att ha ett enda, oberoende, fristående program som kan köras, lagras på icke-flyktig lagring och åtkomst via filsystemet av vilken enhet som helst, och körs ut på OS.
Så vad är den stora affären med alla "installera detta" företag om många bra program av praktiskt taget vilken storlek som helst kan fungera perfekt utan att gå igenom en installationskonfiguration? Det pussar mig lite, och förutom en databas eller andra metadata / åtkomstkonfigurationssystem, vad är den verkliga skillnaden här om den senare (en installerad körbar) utför och fungerar på samma sätt som en fristående?
Finns det någon skillnad här är jag inte medveten om ett icke-installerat program jämfört med en installerad?
PS: Detta behöver inte bara gälla för Windows OS, men alla som genomför en liknande funktion.
Finns det verkligen så mycket av skillnaden mellan fristående och installerade körbara filer, eller är de mer lika än vi kan misstänka?
Svaret
SuperUser-bidragare Wyatt8740 har svaret för oss:
Kort svar: En fristående exe kräver att inga bibliotek installeras på datorn för att köra och kräver inga registerposter eller andra komponenter.
En installerad fil kan vara fristående i ett installationspaket, men är generellt beroende av en mängd olika komponenter och bibliotek installerade bredvid det.
I många fall kan du, genom att använda Universal Extractor (inofficiell uppdatering: här), extrahera innehållet i ett installationsprogram och köra ett program utan administrativa behörigheter i Windows. MSI installatörer kan packas upp med lessmsi.
I de flesta andra operativsystem kan alla program köras utan root / administratörsbehörigheter, genom användarspecifik "bin", "lib" och andra kataloger i hemkatalogen. Personligen förnekar jag installatörer större delen av tiden eftersom de gör det svårare för mig att använda program utan administrativa privilegier när jag inte har dem. Men de förpackas på så sätt av stora företag för att förenkla processen för den genomsnittliga slutanvändaren.
Medan vi har lärt oss att det är möjligt att extrahera och driva en del av vår favoritprogramvara som fristående körbara filer, så finns det ibland inte någon gammal "försökt och sann" installationsprocess för att kunna använda ett program som vi tycker om eller behöver vårt system.
Har du något att lägga till förklaringen? Ljud av i kommentarerna. Vill du läsa mer svar från andra tech-savvy Stack Exchange-användare? Kolla in den fullständiga diskussionsgängan (med kraftigt expanderade svar) här.