PortableExecutableKinds Enum
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Identifies the nature of the code in an executable file.
This enumeration supports a bitwise combination of its member values.
public enum class PortableExecutableKinds
[System.Flags]
public enum PortableExecutableKinds
[System.Flags]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public enum PortableExecutableKinds
[<System.Flags>]
type PortableExecutableKinds =
[<System.Flags>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type PortableExecutableKinds =
Public Enum PortableExecutableKinds
- Inheritance
- Attributes
Name | Value | Description |
---|---|---|
NotAPortableExecutableImage | 0 | The file is not in portable executable (PE) file format. |
ILOnly | 1 | The executable contains only Microsoft intermediate language (MSIL), and is therefore neutral with respect to 32-bit or 64-bit platforms. |
Required32Bit | 2 | The executable can be run on a 32-bit platform, or in the 32-bit Windows on Windows (WOW) environment on a 64-bit platform. |
PE32Plus | 4 | The executable requires a 64-bit platform. |
Unmanaged32Bit | 8 | The executable contains pure unmanaged code. |
Preferred32Bit | 16 | The executable is platform-agnostic but should be run on a 32-bit platform whenever possible. |
To obtain this value for a module, use the Module.GetPEKind method.
Note
This enumeration corresponds to the CorPEKind
enumeration in the unmanaged reflection API, which is accessed by the unmanaged GetPEKind
function.
Product | Versions |
---|---|
.NET | Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 2.0, 2.1 |
.NET feedback
.NET is an open source project. Select a link to provide feedback: