Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
System.Reflection.PortableExecutable.PEReader Class Referencesealed

Public Member Functions

unsafe PEReader (byte *peImage, int size)
 
unsafe PEReader (byte *peImage, int size, bool isLoadedImage)
 
 PEReader (Stream peStream)
 
 PEReader (Stream peStream, PEStreamOptions options)
 
unsafe PEReader (Stream peStream, PEStreamOptions options, int size)
 
 PEReader (ImmutableArray< byte > peImage)
 
void Dispose ()
 
PEMemoryBlock GetEntireImage ()
 
PEMemoryBlock GetMetadata ()
 
PEMemoryBlock GetSectionData (int relativeVirtualAddress)
 
PEMemoryBlock GetSectionData (string sectionName)
 
ImmutableArray< DebugDirectoryEntryReadDebugDirectory ()
 
CodeViewDebugDirectoryData ReadCodeViewDebugDirectoryData (DebugDirectoryEntry entry)
 
PdbChecksumDebugDirectoryData ReadPdbChecksumDebugDirectoryData (DebugDirectoryEntry entry)
 
bool TryOpenAssociatedPortablePdb (string peImagePath, Func< string, Stream?> pdbFileStreamProvider, out MetadataReaderProvider? pdbReaderProvider, out string? pdbPath)
 
MetadataReaderProvider ReadEmbeddedPortablePdbDebugDirectoryData (DebugDirectoryEntry entry)
 

Static Package Functions

static ImmutableArray< DebugDirectoryEntryReadDebugDirectoryEntries (BlobReader reader)
 
static CodeViewDebugDirectoryData DecodeCodeViewDebugDirectoryData (AbstractMemoryBlock block)
 
static PdbChecksumDebugDirectoryData DecodePdbChecksumDebugDirectoryData (AbstractMemoryBlock block)
 
static void ValidateEmbeddedPortablePdbVersion (DebugDirectoryEntry entry)
 
static unsafe NativeHeapMemoryBlock DecodeEmbeddedPortablePdbDebugDirectoryData (AbstractMemoryBlock block)
 

Properties

bool IsLoadedImage [get]
 
PEHeaders PEHeaders [get]
 
bool IsEntireImageAvailable [get]
 
bool HasMetadata [get]
 

Private Member Functions

MemoryBlockProvider GetPEImage ()
 
void InitializePEHeaders ()
 
AbstractMemoryBlock GetEntireImageBlock ()
 
AbstractMemoryBlock GetMetadataBlock ()
 
AbstractMemoryBlock GetPESectionBlock (int index)
 
AbstractMemoryBlock GetDebugDirectoryEntryDataBlock (DebugDirectoryEntry entry)
 
bool TryOpenCodeViewPortablePdb (DebugDirectoryEntry codeViewEntry, string peImageDirectory, Func< string, Stream > pdbFileStreamProvider, out MetadataReaderProvider provider, out string pdbPath, ref Exception errorToReport)
 
bool TryOpenPortablePdbFile (string path, BlobContentId id, Func< string, Stream > pdbFileStreamProvider, out MetadataReaderProvider provider, ref Exception errorToReport)
 
void TryOpenEmbeddedPortablePdb (DebugDirectoryEntry embeddedPdbEntry, ref bool openedEmbeddedPdb, ref MetadataReaderProvider provider, ref Exception errorToReport)
 

Static Private Member Functions

static PEHeaders ReadPEHeadersNoLock (Stream stream, long imageStartPosition, int imageSize, bool isLoadedImage)
 

Private Attributes

MemoryBlockProvider _peImage
 
PEHeaders _lazyPEHeaders
 
AbstractMemoryBlock _lazyMetadataBlock
 
AbstractMemoryBlock _lazyImageBlock
 
AbstractMemoryBlock[] _lazyPESectionBlocks
 

Detailed Description

Definition at line 11 of file PEReader.cs.


The documentation for this class was generated from the following file: