¿Cuál es la diferencia entre las extensiones a.bat, a.com y a.exe?Diferencia entre .com, .exe y .bat?
Respuesta
Originalmente, un archivo .COM
era una mancha literal de código 8086 (es decir, 16-bit x86). Está destinado a ser cargado en una dirección fija, y el cargador salta directamente al primer byte de su dirección. También es limitado en tamaño.
Un archivo .EXE
tiene más información en el encabezado. Por lo tanto, ha requerido estructuras para cosas como vinculación dinámica, donde el código de una DLL se puede parchear en el espacio de memoria de .EXE
en el momento de la carga. Originalmente proviene de DOS, pero hoy se usa en Windows.
Sin embargo, DOS y Windows finalmente fueron a un modelo donde la extensión de archivo en un .COM
y .EXE
no significaba nada. El cargador de programas primero verifica los primeros dos bytes del archivo. Si resulta ser la cadena MZ
(legend has it this stands for the initials of an early Microsoft employee), lo tratará como un EXE
, de lo contrario lo cargará como si fuera un archivo COM
. Como MZ
no se asigna a una instrucción sensible x86 para iniciar un programa, pueden salirse con la suya. Efecto neto: en algunas versiones de DOS/Windows, se puede nombrar un .EXE
con .COM
y viceversa. Por ejemplo, en muchas versiones de DOS/Windows, el famoso COMMAND.COM
era en realidad un EXE
.
No estoy seguro de cuánto se aplica el párrafo anterior a las versiones basadas en NT de Windows. Me imagino que ahora han abandonado las cosas .COM
por completo.
Por último, un archivo .BAT
es una lista de comandos que se ejecutarán como si los hubiera escrito en el símbolo del sistema. Sin embargo, en la actualidad, la mayoría de las personas los nombra como .CMD
.
Un archivo bat (ch) es un script que ejecuta el intérprete de comandos.
Un archivo exe es código binario compilado para ser ejecutado directamente en la CPU.
Un archivo com es una reliquia del pasado para crear un pequeño exe.
.bat es un archivo por lotes. Es interpretado
.exe es un archivo de programa ejecutable regular.
Un archivo .com, al menos para MS-DOS, tiene muchos metadatos perdidos y se carga en un desplazamiento específico en la memoria principal. Es más pequeño que .exe
Supongo que quiere decir para Windows?
"a.bat" se supone que es un archivo por lotes, el equivalente de Windows/DOS de un archivo de script.
"a.com" y "a.exe" se supone que son equivalentes en estos días. Sin embargo, en los días Windows 3.x, un archivo "com" era un ejecutable DOS, donde un archivo "exe" era un ejecutable portátil o un ejecutable basado en Windows. Esto es un problema, ya que los archivos en el formato "www.example.com" pueden existir en su disco duro, y muchas personas lo confunden con un enlace web. Lo que es peor, Windows normalmente intenta ejecutar archivos "com" antes que los archivos "exe".
El orden de precedencia en la búsqueda de archivos ejecutables (http://support.microsoft.com/kb/35284) también es útil a veces cuando está en un enlace (aunque rara vez). – Liao
archivos .exe existían antes de que Windows apareciera. –
En realidad, los Ejecutables portátiles existían antes que Windows. Ver Wikipedia. –
BAT - Batch File: lista de comandos (básicamente un archivo de texto con los comandos de línea de comandos)
.COM - DOS ejecutable cargado en un bloque de memoria fija (se remonta a antes de la multitarea)
.EXE - archivo ejecutable - aplicación estándar en la plataforma Windows
. El archivo .bat afecta directamente al rendimiento de la CPU. Mientras, el archivo .exe será compilado por un intérprete y luego ejecutado en la CPU.
Mientras que los archivos EXE y BAT suelen tener un propósito similar, usan formatos de archivo completamente diferentes. Ambos tipos de archivos se pueden usar para crear contenido ejecutable en Windows, pero los archivos BAT están limitados en los comandos que pueden realizar. Dado que los archivos BAT contienen texto legible por humanos, se pueden editar fácilmente y, por lo tanto, se utilizan a menudo para tareas de scripting personalizadas. Los archivos EXE, por otro lado, contienen datos binarios complejos que se crean utilizando un compilador. Dado que los archivos EXE admiten comandos más complejos que los archivos BAT, la mayoría de las aplicaciones de Windows se guardan en el formato EXE.
También estaba buscando la misma consulta y encontré algo pegado aquí.
Consulte el siguiente enlace, le resultará útil, perfectamente responde a su pregunta:
Difference between .BAT and .EXE
En realidad, .com y .exe son los dos archivos ejecutables binarios, mientras que .bat es básicamente un archivo por lotes . Ahora supongamos que tiene muchos archivos con el mismo nombre, pero diferentes extensiones.
Por ejemplo, a.com
, a.exe
y si está ejecutando el archivo del símbolo del sistema a. Primero ejecutará a.com
(solo si existe), de lo contrario se ejecutará a.exe
. O digamos que a.exe
tampoco está allí, entonces buscará la ejecución de a.bat
. archivo
Consulte también * [Orden en la que el símbolo del sistema ejecuta archivos con el mismo nombre (a.bat vs a.cmd vs a.exe)] (http://stackoverflow.com/questions/605101/order-in-which- command-prompt-executes-files-with-the-same-name-a-bat-vs-a-cmd/605139 # 605139) * –
- Un .BAT (abreviatura de "batch") es un archivo de texto que contiene una serie de comandos de Windows .
- Un archivo .EXE (abreviatura de "ejecutable") es un archivo binario que contiene código binario ejecutable mucho más complejo.
- Un archivo .COM era un ejecutable DOS y hoy en día es igual a .EXE.
- 1. Diferencia entre .dll y .exe?
- 2. .Net Installer - Diferencia entre .exe y .msi
- 3. Diferencia entre "COM" tradicional y COM + (en servicios de componentes)
- 4. ¿Cuál es la diferencia entre * .bat y * .cmd?
- 5. ¿Cuál es la diferencia entre pInvoke y COM Interop?
- 6. ¿Cuál es la diferencia entre COM y OLE?
- 7. La diferencia entre DLL tradicional y COM DLL
- 8. ¿Cómo diferencia Windows entre un EXE regular y un exe .NET?
- 9. Crear servidor sustituto COM (exe) en C#
- 10. Diferencia entre Authenticode, SPC y Java CodeSign?
- 11. MySQL: diferencia entre ', `,' y"
- 12. Diferencia entre objeto y *?
- 13. Diferencia entre. y #
- 14. ¿Diferencia entre == y caso?
- 15. La diferencia entre $ * y $ @
- 16. Diferencia entre & y &
- 17. VBA: Diferencia entre y y +
- 18. Diferencia de tamaño entre la biblioteca estática y dinámica (depuración) e impacto en el exe final
- 19. ¿Cuál es la diferencia entre el formato binario simple (.bin) y el ejecutable de Windows (.exe)?
- 20. Recuperar COM identificador de programa del exe sin registrarlo
- 21. Cuál es la diferencia entre los componentes .NET y los componentes COM
- 22. Cuál es la diferencia entre un complemento COM y un complemento VSTO en
- 23. ¿Cuál es la diferencia entre una cadena COM (BSTR) y una cadena .NET?
- 24. Diferencia entre -Wconversion entre gcc y g ++
- 25. Registro Com y dll manifiestos
- 26. Diferencia entre subprocess.Popen y os.system
- 27. Diferencia entre decimal y decimal
- 28. ¿Diferencia entre trazo y relleno?
- 29. Diferencia entre interrupción y eventos
- 30. Diferencia entre netTcpContextBinding y netTcpBinding
** MZ ** significa ** MORIN Zobowski ** - Diseñó e implementó las primeras versiones de encabezados EXE. :) –
Puede cambiar el nombre de cualquier archivo .exe a .com y se ejecutará correctamente, no tiene importancia. –
¡Solo porque se ejecuta no significa que funcione! EXE y COM son como 2 modelos completamente diferentes de autos de la misma fabricación. –