typedef struct _IMAGE_FILE_HEADER {
WORD Machine;
WORD NumberOfSections;
DWORD TimeDateStamp;
DWORD PointerToSymbolTable;
DWORD NumberOfSymbols;
WORD SizeOfOptionalHeader;
WORD Characteristics;
} IMAGE_FILE_HEADER, *PIMAGE_FILE_HEADER;
Members
Machine
Tipo di architettura del computer. Un file di immagine può essere eseguito solo nel computer specificato o in un sistema che emula il computer specificato. Questo membro può essere uno dei valori seguenti.
Valore
Significato
IMAGE_FILE_MACHINE_I386
0x014c
x86
IMAGE_FILE_MACHINE_IA64
0x0200
Intel Itanium
IMAGE_FILE_MACHINE_AMD64
0x8664
x64
NumberOfSections
Numero di sezioni. Indica la dimensione della tabella della sezione che segue immediatamente le intestazioni. Si noti che il caricatore di Windows limita il numero di sezioni a 96.
TimeDateStamp
I 32 bit bassi del timestamp dell'immagine. Rappresenta la data e l'ora di creazione dell'immagine dal linker. Il valore è rappresentato nel numero di secondi trascorsi dalla mezzanotte (00:00:00), 1 gennaio 1970, Ora coordinata universale, in base all'orologio di sistema.
PointerToSymbolTable
Offset della tabella dei simboli, in byte o zero se non esiste alcuna tabella dei simboli COFF.
NumberOfSymbols
Numero di simboli nella tabella dei simboli.
SizeOfOptionalHeader
Dimensioni dell'intestazione facoltativa, in byte. Questo valore deve essere 0 per i file oggetto.
Characteristics
Caratteristiche dell'immagine. Questo membro può essere uno o più dei valori seguenti.
Valore
Significato
IMAGE_FILE_RELOCS_STRIPPED
0x0001
Le informazioni di rilocazione sono state rimosse dal file. Il file deve essere caricato all'indirizzo di base preferito.
Se l'indirizzo di base non è disponibile, il caricatore segnala un errore.
IMAGE_FILE_EXECUTABLE_IMAGE
0x0002
Il file è eseguibile (non sono presenti riferimenti esterni non risolti).
IMAGE_FILE_LINE_NUMS_STRIPPED
0x0004
I numeri di riga COFF sono stati rimossi dal file.
IMAGE_FILE_LOCAL_SYMS_STRIPPED
0x0008
Le voci della tabella dei simboli COFF sono state rimosse dal file.
IMAGE_FILE_AGGRESIVE_WS_TRIM
0x0010
Tagliare in modo aggressivo il set di lavoro. Questo valore è obsoleto.
IMAGE_FILE_LARGE_ADDRESS_AWARE
0x0020
L'applicazione può gestire indirizzi superiori a 2 GB.
IMAGE_FILE_BYTES_REVERSED_LO
0x0080
I byte della parola vengono invertito. Questo flag è obsoleto.
IMAGE_FILE_32BIT_MACHINE
0x0100
Il computer supporta parole a 32 bit.
IMAGE_FILE_DEBUG_STRIPPED
0x0200
Le informazioni di debug sono state rimosse e archiviate separatamente in un altro file.
IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP
0x0400
Se l'immagine è su supporti rimovibili, copiarlo in ed eseguirlo dal file di scambio.
IMAGE_FILE_NET_RUN_FROM_SWAP
0x0800
Se l'immagine è in rete, copiarla e eseguirla dal file di scambio.
IMAGE_FILE_SYSTEM
0x1000
L'immagine è un file di sistema.
IMAGE_FILE_DLL
0x2000
L'immagine è un file DLL. Anche se è un file eseguibile, non può essere eseguito direttamente.
IMAGE_FILE_UP_SYSTEM_ONLY
0x4000
Il file deve essere eseguito solo in un computer uniprocessore.
IMAGE_FILE_BYTES_REVERSED_HI
0x8000
I byte della parola vengono invertito. Questo flag è obsoleto.