using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace UniversalEditor.ObjectModels.Executable
{
[Flags()]
public enum ExecutableLibraryCharacteristics : ushort
{
///
/// No library characteristics have been specified.
///
None = 0x0000,
///
/// Call when DLL is first loaded into a process's address space.
///
CallUponLoad = 0x0001,
///
/// Call when a thread terminates.
///
CallUponThreadTerminate = 0x0002,
///
/// Call when a thread starts up.
///
CallUponThreadStart = 0x0004,
///
/// Call when DLL exits.
///
CallUponLibraryExit = 0x0008,
///
/// The DLL can be relocated at load time.
///
DynamicBase = 0x0040,
///
/// Code integrity checks are forced. If you set this flag and a section contains only
/// uninitialized data, set the PointerToRawData member of IMAGE_SECTION_HEADER for that
/// section to zero; otherwise, the image will fail to load because the digital signature
/// cannot be verified.
///
ForceCodeIntegrityChecks = 0x0080,
///
/// The image is compatible with data execution prevention (DEP), the NX bit.
///
DataExecutionPreventionCompatible = 0x0100,
///
/// The image is isolation aware, but should not be isolated.
///
NoIsolation = 0x0200,
///
/// The image does not use structured exception handling (SEH). No handlers can be called in
/// this image.
///
NoStructuredExceptionHandling = 0x0400,
///
/// Do not bind the image.
///
NoBinding = 0x0800,
///
/// Reserved.
///
Reserved4096 = 0x1000,
///
/// A WDM driver.
///
WDMDriver = 0x2000,
///
/// Reserved.
///
Reserved16384 = 0x4000,
///
/// The image is terminal server aware.
///
TerminalServerAware = 0x8000
}
}