Kan EXE File Extensions altid erstattes med COM?
Hvis du nogensinde har hørt om at ændre en fils udvidelse fra EXE til COM, har du måske undret dig, om det kun var i stand til at arbejde på nogle få sjældne filer, eller hvis det ville fungere på næsten enhver EXE-fil, du har. Dagens SuperUser Q & A-indlæg har svaret på en nysgerrig læsers spørgsmål.
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 Royi Namir vil gerne vide, om EXE filudvidelser altid kan erstattes med COM dem ?:
Vores antivirus software nægtede at lade mig kopiere en EXE-fil til min Windows 7-startmappe (calc.exe, for eksempel), da det er en EXE-fil. Jeg ændrede derefter filforlængelsen fra EXE til COM på filen og kunne nemt kopiere den til mappen uden problemer (meget professionel).
Og selvfølgelig, calc.com fungerer lige så godt som calc.exe, som fik mig til at undre. Hvornår vil et program med en EXE filudvidelse ikke fungere, når udvidelsen ændres til COM? Næsten hver EXE-fil, som jeg har kontrolleret, har fungeret. Jeg vil gerne vide årsagerne til "hvorfor og hvorfor ikke" i sagen.
Kan EXE-filudvidelser altid erstattes med COM-enheder?
Svaret
SuperUser bidragyder Math Man har svaret for os:
Det har at gøre med det interne format for filen. Oprindeligt var COM filer enkle hukommelsesbilleder og EXE-filer havde mange overskrifter forbundet med dem. Som følge heraf kunne du ikke omdøbe dem.
Som tiden gik, og de var nødt til at gøre tingene bagud kompatible, ændrede Microsoft det, så operativsystemet ser på selve filen for at bestemme hvilken type fil det er i stedet for udvidelsen. Som følge heraf ignorerer Windows udvidelsen helt, når du kører den omdøbte fil.
Besøg nedenstående links for en mere detaljeret og omfattende forklaring.
Hvad er forskellen mellem .com, .exe og .bat? [StackOverflow]
Hvad er forskellen mellem COM og EXE-udvidelserne? [Microsoft Developer Blog]
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 diskussionstråd her.