.exe


.exe is a common filename extension denoting an executable file for Microsoft Windows.

File formats

There are several file formats which may be used by a file with a extension:

DOS

;16-bit DOS MZ executable:The original DOS executable file format. These formats can be identified by the letters "MZ" at the beginning of the file in ASCII. All later formats have an MZ DOS stub header.
;16-bit New Executable: Introduced with the multitasking MS-DOS 4.0 and also used by 16-bit OS/2 and Windows, NE can be identified by the "NE" in ASCII.

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. They are also used by some DOS extenders.
;Mixed 16/32-bit Linear Executable: Introduced with OS/2 2.0, these can be identified by the "LE" in ASCII. This format is used for VxD drivers under Windows 3.x, OS/2, and Windows 9x; it is also used by some DOS extenders.

Windows

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 known as DOS stub. Started in DOS the stub typically displays a message "This program cannot be run in DOS mode" before exiting cleanly, this thereby constituting a minimal form of fat binary. A few dual-mode programs such as regedit and older WinZIP self extractors include a more functional DOS section.
;32-bit Portable Executable: Introduced with Windows NT, these can be identified by the "PE" in ASCII.
;64-bit Portable Executable : Introduced by 64-bit versions of Windows, this is a PE file with wider fields. In most cases, code can be written to simply work as either a 32 or 64-bit PE file.

Other

Besides these, there are also many custom EXE formats, including but not limited to W3, W4, DL, MP, P2, P3.