ファイルの拡張子をEXEからCOMに変更することを聞いたことがある場合は、それが少数のまれなファイルでしか機能しないのか、それともお持ちのほぼすべてのEXEファイルで機能するのか疑問に思われるかもしれません。今日のスーパーユーザーのQ&A投稿には、好奇心旺盛な読者の質問に対する回答があります。
今日の質疑応答セッションは、コミュニティ主導のQ&AWebサイトのグループであるStackExchangeの下位区分であるSuperUserの好意で行われます。
質問
スーパーユーザーリーダーのRoyiNamirは、EXEファイル拡張子を常にCOMファイル拡張子に置き換えることができるかどうかを知りたいですか?:
ウイルス対策ソフトウェアは、EXEファイルであるためWindows 7の起動フォルダー(calc.exeなど)にEXEファイルをコピーすることを拒否しました。次に、ファイルのファイル拡張子をEXEからCOMに変更し、問題なくフォルダーに簡単にコピーできました(非常に専門的です)。
そしてもちろん、calc.comはcalc.exeと同じように機能するので、不思議に思いました。拡張子をCOMに変更した場合、EXEファイル拡張子の付いたプログラムが動作しないのはいつですか?私がチェックしたほとんどすべてのEXEファイルが機能しました。問題の「理由と理由」の理由を知りたいと思います。
EXEファイル拡張子は常にCOMのものに置き換えることができますか?
答え
スーパーユーザーの寄稿者であるMathManが答えを持っています。
それはファイルの内部フォーマットと関係があります。元々、COMファイルは単純なメモリイメージであり、EXEファイルには多くのヘッダーが関連付けられていました。その結果、名前を変更できませんでした。
時間が経ち、下位互換性を持たせる必要があったため、Microsoftは、オペレーティングシステムがファイル自体を調べて、拡張子ではなくファイルの種類を判別するように変更しました。その結果、名前を変更したファイルを実行すると、Windowsは拡張子を完全に無視します。
より詳細で詳細な説明については、以下のリンクにアクセスしてください。
.com、.exe、および.batの違いは何ですか? 9000002
COM拡張機能とEXE拡張機能の違いは何ですか? 9000003
説明に追加するものがありますか?コメントで音を立ててください。他の技術に精通したStackExchangeユーザーからの回答をもっと読みたいですか? ここで完全なディスカッションスレッドをチェックしてください 。