- EXE
EXE is the common
filename extension denoting anexecutable file (a program) in theDOS ,OpenVMS ,Microsoft Windows ,ReactOS , andOS/2 operating systems.Besides the executable program itself, many EXE files contain other components called resources, such as bitmaps and icons which the executable program may use for itsgraphical user interface .EXE file formats
There are several main executable
file formats :DOS *16-bit DOS MZ executable: the original DOS executable file format, these can be identified by the letters "MZ" at the beginning of the file in ASCII. See
DOS executable .
*16-bit DOS COM executable: DOS MZ executable files having the ".COM" extension. See COM for details on the related executable file format from where the extension name comes from.
*16-bitNew Executable : Introduced with Multitasking MS-DOS 4.0, these can be identified by the "NE" in ASCII. These never became popular or useful for DOS and cannot be run by any other version of DOS, but can usually be run by 32-bit Windows and OS/2 versions Fact|date=February 2007.OS/2 *32-bit Linear Executable: Introduced with OS/2 2.0, these can be identified by the "LX" in ASCII. These can only be run by OS/2 2.0 and higher Fact|date=February 2007. They are also used by some
DOS extender s.
*Mixed 16/32-bit Linear Executable: Introduced with OS/2 2.0, these can be identified by the "LE" in ASCII. This format is not used for OS/2 applications anymore, but instead forVxD drivers under Windows 3.x and Windows 9x, and by some DOS extenders.
=Windows=*32-bit
Portable Executable : Introduced with Windows NT, these are the most complex Fact|date=February 2007 and can be identified by the "PE" in ASCII. These can be run by all versions ofWindows NT , and alsoWindows 95 and higher, partially also in DOS usingHX DOS Extender . They are also used inBeOS R3, however the format used by BeOS somewhat violates the PE specification as it doesn't specify a correct subsystem Fact|date=February 2007.
*64-bit Portable Executable: Introduced by 64-bit versions of Windows, these are PE files with a CPU type corresponding to a 64-bit instruction set such asx86-64 orIA-64 . These can only be run by 64-bit editions of Microsoft Windows, such asWindows XP 64-Bit Edition or Windows Server 2003 64-Bit Edition, running on machines with the CPU type specified in the file.Other
Besides these, there are also many custom EXE formats, such as "W3" (a collection of LE files, only used in WIN386.EXE), "W4" (a compressed collection of LE files, only used in VMM32.VXD), "DL", "MP", "P2", "P3" (last three used by
Phar Lap extenders), and probably more Fact|date=February 2007.When a 16-bit or 32-bit Windows executable is run by Windows, execution starts at either the NE or the PE, and ignores the MZ code. On the other hand, DOS cannot (except using
HX DOS Extender , supports PE files only) execute these files. To prevent DOS from crashing, all Windows executable files should and usually do start with a "working" DOS program called a "stub". Fact|date=February 2007, simply displaying the message "This program cannot be run in DOS mode" (or similar), but there are a few dual-mode programs (MZ-NE or MZ-PE) (such as regedit and some older WinZIP self extractors) have a usable DOS section Fact|date=February 2007ee also
*
Executable and Linkable Format
*EXE packer
*Executable
*List of file formats References
External links
* [http://dependencywalker.com/ Dependency Walker]
* [http://www.delorie.com/djgpp/doc/exe/ MZ EXE header format]
Wikimedia Foundation. 2010.