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 } }