PortableExecutableKinds Enum

Definition

Identifies the nature of the code in an executable file.

This enumeration supports a bitwise combination of its member values.

[System.Flags]
public enum PortableExecutableKinds
[System.Flags]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public enum PortableExecutableKinds
Inheritance
PortableExecutableKinds
Attributes

Fields

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.

Remarks

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.

Applies to

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