Ако някога сте чували да промените разширението на файла от EXE на COM, може би сте се чудили дали е способен да работи само върху няколко редки файла или дали ще работи върху почти всеки EXE файл, който имате. Днешната публикация "SuperUser Q & A" е отговорът на въпроса на любознателен читател.
Днешната сесия за въпроси и отговори ни идва с любезното съдействие на SuperUser - подразделение на Stack Exchange - обединяване на уеб сайтове с въпроси и отговори.
Четецът на SuperUser Royi Namir иска да разбере дали EXE файловите разширения винаги могат да бъдат заменени с COM такива ?:
Нашият антивирусен софтуер отказа да ми позволи да копирам EXE файл в папката за стартиране на Windows 7 (например calc.exe), тъй като е EXE файл. Тогава променях файловото разширение от EXE на COM във файла и успях лесно да го копирам в папката без проблеми (много професионално).
И, разбира се, calc.com работи точно като calc.exe, което ме накара да се чудя. Кога програма с разширение EXE файл няма да работи, когато разширението е променено на COM? Почти всеки EXE файл, който проверих, е работил. Бих искал да знам причините за "защо и защо не" на въпроса.
Могат ли EXE файловите разширения винаги да бъдат заменени с COM?
Математическият сътрудник на SuperUser има отговора за нас:
Това е свързано с вътрешния формат на файла. Първоначално COM файловете бяха обикновени памети и EXE файловете бяха свързани с тях. В резултат на това не можете да ги преименувате.
С течение на времето и те трябваше да направят нещата обратно съвместими, Microsoft го промени, така че операционната система гледа на самия файл, за да определи какъв тип файл е вместо разширението. В резултат на това, когато стартирате преименувания файл, Windows изцяло пренебрегва разширението.
Посетете линковете по-долу за по-подробно и подробно обяснение.
Каква е разликата между .com, .exe и .bat? [Stackoverflow]
Каква е разликата между разширенията COM и EXE? [Блог на програмистите на Microsoft]
Имате ли нещо, което да добавите към обяснението? Звучи в коментарите. Искате ли да прочетете повече отговори от други потребители на Stack Exchange? Вижте цялата тема на дискусията тук.