Struct object::pe::ImageDosHeader
source · #[repr(C)]pub struct ImageDosHeader {Show 19 fields
pub e_magic: U16<LittleEndian>,
pub e_cblp: U16<LittleEndian>,
pub e_cp: U16<LittleEndian>,
pub e_crlc: U16<LittleEndian>,
pub e_cparhdr: U16<LittleEndian>,
pub e_minalloc: U16<LittleEndian>,
pub e_maxalloc: U16<LittleEndian>,
pub e_ss: U16<LittleEndian>,
pub e_sp: U16<LittleEndian>,
pub e_csum: U16<LittleEndian>,
pub e_ip: U16<LittleEndian>,
pub e_cs: U16<LittleEndian>,
pub e_lfarlc: U16<LittleEndian>,
pub e_ovno: U16<LittleEndian>,
pub e_res: [U16<LittleEndian>; 4],
pub e_oemid: U16<LittleEndian>,
pub e_oeminfo: U16<LittleEndian>,
pub e_res2: [U16<LittleEndian>; 10],
pub e_lfanew: U32<LittleEndian>,
}
Expand description
DOS .EXE header
Fields§
§e_magic: U16<LittleEndian>
Magic number
e_cblp: U16<LittleEndian>
Bytes on last page of file
e_cp: U16<LittleEndian>
Pages in file
e_crlc: U16<LittleEndian>
Relocations
e_cparhdr: U16<LittleEndian>
Size of header in paragraphs
e_minalloc: U16<LittleEndian>
Minimum extra paragraphs needed
e_maxalloc: U16<LittleEndian>
Maximum extra paragraphs needed
e_ss: U16<LittleEndian>
Initial (relative) SS value
e_sp: U16<LittleEndian>
Initial SP value
e_csum: U16<LittleEndian>
Checksum
e_ip: U16<LittleEndian>
Initial IP value
e_cs: U16<LittleEndian>
Initial (relative) CS value
e_lfarlc: U16<LittleEndian>
File address of relocation table
e_ovno: U16<LittleEndian>
Overlay number
e_res: [U16<LittleEndian>; 4]
Reserved words
e_oemid: U16<LittleEndian>
OEM identifier (for e_oeminfo)
e_oeminfo: U16<LittleEndian>
OEM information; e_oemid specific
e_res2: [U16<LittleEndian>; 10]
Reserved words
e_lfanew: U32<LittleEndian>
File address of new exe header
Implementations§
source§impl ImageDosHeader
impl ImageDosHeader
sourcepub fn parse<'data, R: ReadRef<'data>>(data: R) -> Result<&'data Self>
pub fn parse<'data, R: ReadRef<'data>>(data: R) -> Result<&'data Self>
Read the DOS header.
Also checks that the e_magic
field in the header is valid.
sourcepub fn nt_headers_offset(&self) -> u32
pub fn nt_headers_offset(&self) -> u32
Return the file offset of the nt_headers.
Trait Implementations§
source§impl Clone for ImageDosHeader
impl Clone for ImageDosHeader
source§fn clone(&self) -> ImageDosHeader
fn clone(&self) -> ImageDosHeader
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for ImageDosHeader
impl Debug for ImageDosHeader
impl Copy for ImageDosHeader
impl Pod for ImageDosHeader
Auto Trait Implementations§
impl Freeze for ImageDosHeader
impl RefUnwindSafe for ImageDosHeader
impl Send for ImageDosHeader
impl Sync for ImageDosHeader
impl Unpin for ImageDosHeader
impl UnwindSafe for ImageDosHeader
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)