Trang chủ » làm thế nào để » Phần mở rộng tệp EXE luôn có thể được thay thế bằng COM?

    Phần mở rộng tệp EXE luôn có thể được thay thế bằng COM?

    Nếu bạn đã từng nghe về việc thay đổi phần mở rộng của tệp từ EXE sang COM, bạn có thể tự hỏi liệu nó chỉ có khả năng hoạt động trên một vài tệp hiếm hay nếu nó hoạt động trên gần như bất kỳ tệp EXE nào bạn có. Bài hỏi và trả lời của SuperUser hôm nay có câu trả lời cho câu hỏi của người đọc tò mò.

    Phiên hỏi và trả lời hôm nay đến với chúng tôi nhờ sự hỗ trợ của SuperUser - một phân ngành của Stack Exchange, một nhóm các trang web Hỏi & Đáp do cộng đồng điều khiển.

    Câu hỏi

    Trình đọc SuperUser Royi Namir muốn biết liệu phần mở rộng tệp EXE luôn có thể được thay thế bằng COM không?:

    Phần mềm chống vi-rút của chúng tôi đã từ chối cho phép tôi sao chép tệp EXE vào thư mục khởi động Windows 7 của mình (ví dụ: calc.exe) vì đây là tệp EXE. Sau đó tôi đã thay đổi phần mở rộng tệp từ EXE sang COM trên tệp và có thể dễ dàng sao chép nó vào thư mục mà không gặp vấn đề gì (rất chuyên nghiệp).

    Và tất nhiên, calc.com hoạt động tốt như calc.exe, điều này khiến tôi băn khoăn. Khi nào một chương trình có phần mở rộng tệp EXE sẽ không hoạt động khi phần mở rộng được thay đổi thành COM? Hầu như mọi tệp EXE mà tôi đã kiểm tra đều hoạt động. Tôi rất muốn biết lý do cho việc tại sao và tại sao không phải là vấn đề.

    Phần mở rộng tệp EXE luôn có thể được thay thế bằng COM?

    Câu trả lời

    Math Man, người đóng góp cho SuperUser có câu trả lời cho chúng tôi:

    Nó phải làm với định dạng bên trong của tập tin. Ban đầu, các tệp COM là các hình ảnh bộ nhớ đơn giản và các tệp EXE có rất nhiều tiêu đề được liên kết với chúng. Do đó, bạn không thể đổi tên chúng.

    Khi thời gian trôi qua và họ phải làm cho mọi thứ tương thích ngược, Microsoft đã thay đổi nó để hệ điều hành nhìn vào tệp để xác định loại tệp thay vì phần mở rộng. Do đó, khi bạn chạy tệp đã đổi tên, Windows sẽ bỏ qua phần mở rộng hoàn toàn.

    Truy cập các liên kết dưới đây để được giải thích chi tiết và sâu rộng hơn.

    Sự khác biệt giữa .com, .exe và .bat là gì? [StackOverflow]

    Sự khác biệt giữa các phần mở rộng COM và EXE là gì? [Blog nhà phát triển của Microsoft]


    Có một cái gì đó để thêm vào lời giải thích? Tắt âm thanh trong các ý kiến. Bạn muốn đọc thêm câu trả lời từ những người dùng Stack Exchange am hiểu công nghệ khác? Kiểm tra chủ đề thảo luận đầy đủ ở đây.