![]() |
Namen der PE-Sections erhalten
Hi,
also ich würde gerne wissen wie ich den namen der PE-Sections wie z.B in PEID erhlaten kann, es gibt sogat ein Projekt der Jedis welches opensources ist...jedoch versteh ich es nicht ganz. Algemeine PE Informarionen lese ich volgendermaßen aus:
Delphi-Quellcode:
Sicherlich kann ich was mit PImageSectionHeader anfangen, nur wie?
var
OFS : TOFStruct; FHandle : HFILE; DosHeader : TImageDosHeader; ImageNtHeaders : PImageNtHeaders; ImageSections : PImageSectionHeader; dwTemp : DWORD; EP : Integer; FirstSectionName: String; begin FHandle:= OpenFile(PChar(FilePath), OFS, OF_READ); if (FHandle = INVALID_HANDLE_VALUE) then Exit; ReadFile(FHandle, DosHeader, SizeOf(DosHeader), dwTemp, nil); SetFilePointer(FHandle, DosHeader._lfanew, nil, FILE_BEGIN); ReadFile(FHandle, ImageNtHeaders, SizeOf(ImageNtHeaders), dwTemp, nil); // ReadFile(FHandle, ImageSections, SizeOf(ImageSections), dwTemp, nil); EP:= ImageNtHeaders.OptionalHeader.AddressOfEntryPoint; Closehandle(FHandle); end; Danke für antwort(en)! |
Re: Namen der PE-Sections erhalten
also ich habe jetzt volgendes gemacht:
Delphi-Quellcode:
..das Problem ist das ich hiermit immer nur den namen der ersten section erhalte.
type
TImageSectionHeader = packed record Name: array[0..7] of Char; VirtualSize: DWORD; VirtualAddress: DWORD; PhysicalSize: DWORD; PhysicalOffset: DWORD; PointerToRelocations: DWORD; PointerToLinenumbers: DWORD; NumberOfRelocations: WORD; NumberOfLinenumbers: WORD; Characteristics: DWORD; end; [...] for i := 0 to ImageNtHeaders.FileHeader.NumberOfSections do begin Memo1.Lines.Add(SectionHeader.Name[i]); end; Und dan komischerweise volgendermaßen z.B.: c o d e Wie kann ich jetzt den namen der anderen Sections erhalten? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz