Struct object::pe::ImageVxdHeader

source ·
#[repr(C)]
pub struct ImageVxdHeader {
Show 51 fields pub e32_magic: U16<LittleEndian>, pub e32_border: u8, pub e32_worder: u8, pub e32_level: U32<LittleEndian>, pub e32_cpu: U16<LittleEndian>, pub e32_os: U16<LittleEndian>, pub e32_ver: U32<LittleEndian>, pub e32_mflags: U32<LittleEndian>, pub e32_mpages: U32<LittleEndian>, pub e32_startobj: U32<LittleEndian>, pub e32_eip: U32<LittleEndian>, pub e32_stackobj: U32<LittleEndian>, pub e32_esp: U32<LittleEndian>, pub e32_pagesize: U32<LittleEndian>, pub e32_lastpagesize: U32<LittleEndian>, pub e32_fixupsize: U32<LittleEndian>, pub e32_fixupsum: U32<LittleEndian>, pub e32_ldrsize: U32<LittleEndian>, pub e32_ldrsum: U32<LittleEndian>, pub e32_objtab: U32<LittleEndian>, pub e32_objcnt: U32<LittleEndian>, pub e32_objmap: U32<LittleEndian>, pub e32_itermap: U32<LittleEndian>, pub e32_rsrctab: U32<LittleEndian>, pub e32_rsrccnt: U32<LittleEndian>, pub e32_restab: U32<LittleEndian>, pub e32_enttab: U32<LittleEndian>, pub e32_dirtab: U32<LittleEndian>, pub e32_dircnt: U32<LittleEndian>, pub e32_fpagetab: U32<LittleEndian>, pub e32_frectab: U32<LittleEndian>, pub e32_impmod: U32<LittleEndian>, pub e32_impmodcnt: U32<LittleEndian>, pub e32_impproc: U32<LittleEndian>, pub e32_pagesum: U32<LittleEndian>, pub e32_datapage: U32<LittleEndian>, pub e32_preload: U32<LittleEndian>, pub e32_nrestab: U32<LittleEndian>, pub e32_cbnrestab: U32<LittleEndian>, pub e32_nressum: U32<LittleEndian>, pub e32_autodata: U32<LittleEndian>, pub e32_debuginfo: U32<LittleEndian>, pub e32_debuglen: U32<LittleEndian>, pub e32_instpreload: U32<LittleEndian>, pub e32_instdemand: U32<LittleEndian>, pub e32_heapsize: U32<LittleEndian>, pub e32_res3: [u8; 12], pub e32_winresoff: U32<LittleEndian>, pub e32_winreslen: U32<LittleEndian>, pub e32_devid: U16<LittleEndian>, pub e32_ddkver: U16<LittleEndian>,
}
Expand description

Windows VXD header

Fields§

§e32_magic: U16<LittleEndian>

Magic number

§e32_border: u8

The byte ordering for the VXD

§e32_worder: u8

The word ordering for the VXD

§e32_level: U32<LittleEndian>

The EXE format level for now = 0

§e32_cpu: U16<LittleEndian>

The CPU type

§e32_os: U16<LittleEndian>

The OS type

§e32_ver: U32<LittleEndian>

Module version

§e32_mflags: U32<LittleEndian>

Module flags

§e32_mpages: U32<LittleEndian>

Module # pages

§e32_startobj: U32<LittleEndian>

Object # for instruction pointer

§e32_eip: U32<LittleEndian>

Extended instruction pointer

§e32_stackobj: U32<LittleEndian>

Object # for stack pointer

§e32_esp: U32<LittleEndian>

Extended stack pointer

§e32_pagesize: U32<LittleEndian>

VXD page size

§e32_lastpagesize: U32<LittleEndian>

Last page size in VXD

§e32_fixupsize: U32<LittleEndian>

Fixup section size

§e32_fixupsum: U32<LittleEndian>

Fixup section checksum

§e32_ldrsize: U32<LittleEndian>

Loader section size

§e32_ldrsum: U32<LittleEndian>

Loader section checksum

§e32_objtab: U32<LittleEndian>

Object table offset

§e32_objcnt: U32<LittleEndian>

Number of objects in module

§e32_objmap: U32<LittleEndian>

Object page map offset

§e32_itermap: U32<LittleEndian>

Object iterated data map offset

§e32_rsrctab: U32<LittleEndian>

Offset of Resource Table

§e32_rsrccnt: U32<LittleEndian>

Number of resource entries

§e32_restab: U32<LittleEndian>

Offset of resident name table

§e32_enttab: U32<LittleEndian>

Offset of Entry Table

§e32_dirtab: U32<LittleEndian>

Offset of Module Directive Table

§e32_dircnt: U32<LittleEndian>

Number of module directives

§e32_fpagetab: U32<LittleEndian>

Offset of Fixup Page Table

§e32_frectab: U32<LittleEndian>

Offset of Fixup Record Table

§e32_impmod: U32<LittleEndian>

Offset of Import Module Name Table

§e32_impmodcnt: U32<LittleEndian>

Number of entries in Import Module Name Table

§e32_impproc: U32<LittleEndian>

Offset of Import Procedure Name Table

§e32_pagesum: U32<LittleEndian>

Offset of Per-Page Checksum Table

§e32_datapage: U32<LittleEndian>

Offset of Enumerated Data Pages

§e32_preload: U32<LittleEndian>

Number of preload pages

§e32_nrestab: U32<LittleEndian>

Offset of Non-resident Names Table

§e32_cbnrestab: U32<LittleEndian>

Size of Non-resident Name Table

§e32_nressum: U32<LittleEndian>

Non-resident Name Table Checksum

§e32_autodata: U32<LittleEndian>

Object # for automatic data object

§e32_debuginfo: U32<LittleEndian>

Offset of the debugging information

§e32_debuglen: U32<LittleEndian>

The length of the debugging info. in bytes

§e32_instpreload: U32<LittleEndian>

Number of instance pages in preload section of VXD file

§e32_instdemand: U32<LittleEndian>

Number of instance pages in demand load section of VXD file

§e32_heapsize: U32<LittleEndian>

Size of heap - for 16-bit apps

§e32_res3: [u8; 12]

Reserved words

§e32_winresoff: U32<LittleEndian>§e32_winreslen: U32<LittleEndian>§e32_devid: U16<LittleEndian>

Device ID for VxD

§e32_ddkver: U16<LittleEndian>

DDK version for VxD

Trait Implementations§

source§

impl Clone for ImageVxdHeader

source§

fn clone(&self) -> ImageVxdHeader

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ImageVxdHeader

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Copy for ImageVxdHeader

source§

impl Pod for ImageVxdHeader

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Copy,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.