.exe

From Wikipedia, the free encyclopedia
(Redirected from EXE file)
Jump to navigation Jump to search

Template:Short description Script error: No such module "other uses". Template:Use dmy dates Script error: No such module "Infobox".Template:Template otherScript error: No such module "Check for unknown parameters". For Microsoft Windows, OS/2, and DOS, .exe is the filename extension that denotes a file as being executable Template:Endash a computer program Template:Endash containing an entry point.[1]

In addition to being executable (adjective) such a file is often called an executable (noun) which is sometimes abbreviated as EXE.

File formats

The file format of an EXE file varies by operating system version.

An operating system cannot use an EXE file unless it is formatted for it. Note that some formats support multiple operating systems.

Script error: No such module "anchor".DOS

16-bit DOS MZ executable (MZ)
The original DOS executable file format. These formats can be identified by the letters "MZ" at the beginning of the file in ASCII. Later formats may contain an MZ DOS stub header.[2]
16-bit New Executable (NE)
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

Script error: No such module "anchor".

32-bit Linear Executable (LX)
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.[3]
Mixed 16/32-bit Linear Executable (LE)
Introduced with OS/2 2.0, these can be identified by the "LE" in ASCII.
  1. REDIRECT Template:BreakVxD drivers on Windows 3.x and Windows 9x also use LE format.

Windows

Script error: No such module "anchor".

32-bit Portable Executable (PE)
Introduced with Windows NT, they are fat binaries consisting of a DOS-specific and a Windows-specific part. The DOS-specific part (dubbed DOS stub) is a legitimate 16-bit DOS program. Microsoft C++ linker, by default, uses a minimal DOS stub that prints the following message: "This program cannot be run in DOS mode."[2][4][5] Windows ignores the DOS stub and executes the Windows-specific portion that starts with the "PE\0\0" ASCII sequence (letters "PE" and two null bytes).[2] With some linkers, it is possible to specify a custom DOS stub.[2][4][6] Indeed, there are a few dual programs, such as regedit in Windows 95[7] and old versions of WinZIP self extractors.
64-bit Portable Executable (PE32+)
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.[8] This file also includes a DOS stub.[6]

Other

Script error: No such module "anchor". There are other EXE formats, including but not limited to 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).[9]

See also

References

Template:Reflist

Further reading

External links

Template:Executables

  1. Script error: No such module "citation/CS1".
  2. a b c d Cite error: Invalid <ref> tag; no text was provided for refs named PE Format
  3. Script error: No such module "citation/CS1".
  4. a b Cite error: Invalid <ref> tag; no text was provided for refs named /STUB
  5. Cite error: Invalid <ref> tag; no text was provided for refs named DOS Stub
  6. a b Cite error: Invalid <ref> tag; no text was provided for refs named dosStub.exe
  7. Cite error: Invalid <ref> tag; no text was provided for refs named regedit in real mode
  8. Cite error: Invalid <ref> tag; no text was provided for refs named PE32plus
  9. Script error: No such module "citation/CS1".