EXE สามารถถูกแทนที่ด้วย COM ได้หรือไม่?


53

ดูตัวอย่าง

ซอฟต์แวร์ป้องกันไวรัสของเราไม่อนุญาตให้ฉันคัดลอกไฟล์ EXE ไปยังโฟลเดอร์เริ่มต้น Windows 7 ของฉัน (เช่น calc.exe) เนื่องจากเป็นไฟล์ EXE

ดังนั้นฉันจึงเปลี่ยนชื่อเป็นไฟล์ COM จากนั้นก็คัดลอกและอนุญาต (มันเป็นมืออาชีพมาก)

และแน่นอน - calc.comใช้งานได้

ซึ่งทำให้ฉันถาม (เฉพาะความอยากรู้):

คำถาม

โปรแกรม EXE จะไม่ทำงานเมื่อเปลี่ยนชื่อเป็น COM เมื่อใด เกือบทุกไฟล์ exe ที่ฉันตรวจสอบแล้วทำงานได้

ฉันชอบที่จะรู้ว่าทำไมถึงเป็นเช่นนั้น


42
อย่าคัดลอกไฟล์ไปยังโฟลเดอร์เริ่มต้น - สร้างทางลัดแทน
gronostaj

4
ใช่มันเป็นไปได้ แต่อย่างที่บอกไปแล้ว ไม่ใช่ AV ที่โง่ :-)
Royi Namir

11
นอกจากนี้คุณยังสามารถเปลี่ยนชื่อเป็น. scr (สกรีนเซฟเวอร์) และใช้งานได้
pjc50

2
ไม่ใช่ AV ที่โง่ (นอกเหนือจากการไม่เข้าใจว่าไฟล์ที่มีนามสกุลเป็น com ยังสามารถตีความได้ว่าเป็นไฟล์ PE) คุณไม่ควรวางไฟล์เอ็กซีคิ้วท์ในตำแหน่งที่เขียนได้ง่าย - โดยเฉพาะคุณต้องการให้ผู้ดูแลระบบ (ที่มีโทเค็นผู้ดูแลระบบ) ได้รับอนุญาตให้เขียนในไดเรคทอรีเดียวกับที่คุณมีไฟล์ปฏิบัติการ ใช้ทางลัด :)
Luaan

1
@Luaan ฉันไม่เห็นว่าการยกเว้น EXEs และการอนุญาตทางลัดใน Startup นั้นมีความปลอดภัยมากกว่าการอนุญาตทั้ง EXE และทางลัดอย่างไร ดูเหมือนจะเปรียบกับฉัน
jrw32982

คำตอบ:


10

มันเกี่ยวกับรูปแบบภายในของไฟล์ ในตอนแรกไฟล์. com คือรูปภาพหน่วยความจำที่เรียบง่ายและไฟล์. exe มีส่วนหัวที่เกี่ยวข้องมากมาย ดังนั้นคุณไม่สามารถเปลี่ยนชื่อได้ เมื่อเวลาผ่านไปและพวกเขาต้องทำให้สิ่งต่าง ๆ เข้ากันได้ย้อนหลัง Microsoft ได้ทำการเปลี่ยนแปลงเพื่อให้ระบบปฏิบัติการตรวจสอบไฟล์เองเพื่อกำหนดประเภทของไฟล์แทนที่จะเป็นส่วนขยาย ดังนั้นเมื่อคุณเรียกใช้ไฟล์ที่ถูกเปลี่ยนชื่อ Windows จะไม่สนใจนามสกุลทั้งหมด ดูลิงก์ด้านล่างเพื่อดูคำอธิบายเพิ่มเติม

คำถามที่คล้ายกัน

คำอธิบายบล็อกของ Microsoft


1
Gee มีใครอีกบ้างที่คิดอย่างนั้น? ... UNIX / Linux
โจ

1
@ Joe ระบบใด ๆ ที่มีการเติบโตแบบอินทรีย์ใช่ มีไฟล์ COM อยู่นานก่อนที่ไฟล์พกพาจะทำงานได้อย่างสมบูรณ์และค่อนข้างใช้งานได้นาน
Luaan

@ Luaan แน่นอนคุณพูดถูก ฉันกำลังสร้าง / ใช้ไฟล์ com บน CP / M (ที่ 64k of ram ไม่เคยเป็นปัญหาสำหรับฉัน) เป็นเรื่องที่น่าสนใจเมื่อระบบปฏิบัติการหนึ่งคัดลอกบางอย่างจากอีกระบบหนึ่งที่ทำให้ถูกต้องในการเริ่มต้น - โดยเฉพาะอย่างยิ่งเมื่อพวกเขาดูถูกอย่างถี่ถ้วนมาเป็นเวลานาน
โจ

@ Joe เป็นแฟนตัวเองของ Linux ฉันชอบวิธีการใช้คุณสมบัติแทนส่วนขยาย
Math Man

Factoid แบบสุ่ม แต่ไฟล์. COM จริง (MS-DOS และ CP / M ดั้งเดิม) ถูก จำกัด ขนาดไฟล์หนึ่งเซ็กเมนต์ (64kb) เนื่องจากภาพถูกคัดลอกโดยตรงไปยังส่วนและดำเนินการ ยิ่งคุณรู้ ฯลฯ ...
0x90h
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.