AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi PE Header + Resource Directory unter 64 Bit auslesen?
Thema durchsuchen
Ansicht
Themen-Optionen

PE Header + Resource Directory unter 64 Bit auslesen?

Ein Thema von Zacherl · begonnen am 17. Feb 2009 · letzter Beitrag vom 17. Feb 2009
 
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#4

Re: PE Header + Resource Directory unter 64 Bit auslesen?

  Alt 17. Feb 2009, 21:00
Ah danke euch, damit kann ich jetzt zumindest mal zwischen 64 Bit und 32 Bit differenzieren

Also das Ermitteln des IMAGE_DIRECTORY_ENTRY_RESOURCE Directories funktioniert schonmal. Doch dann hängt es an den verwendeten Strukturen, mit denen ich die Resourcen auslese. Momentan verwende ich folgende:

Code:
typedef struct _IMAGE_RESOURCE_DIRECTORY
{
DWORD  Characteristics; // Not important to resource retrieval.
DWORD  TimeDateStamp;  // Not important to resource retrieval.
WORD   MajorVersion;   // Not important to resource retrieval.
WORD   MinorVersion;   // Not important to resource retrieval.
WORD   NumberOfNamedEntries;
WORD   NumberOfIdEntries;
//  IMAGE_RESOURCE_DIRECTORY_ENTRY DirectoryEntries[];

IMAGE_RESOURCE_DIRECTORY, *PIMAGE_RESOURCE_DIRECTORY;

typedef struct _IMAGE_RESOURCE_DIRECTORY_ENTRY
{
DWORD Name;
DWORD OffsetToData;
}
IMAGE_RESOURCE_DIRECTORY_ENTRY, *PIMAGE_RESOURCE_DIRECTORY_ENTRY;

typedef struct _IMAGE_RESOURCE_DIR_STRING_U
{
WORD   Length;       // Number of Unicode characters in string
WCHAR  NameString[1]; // Length Unicode characters
}
IMAGE_RESOURCE_DIR_STRING_U, *PIMAGE_RESOURCE_DIR_STRING_U;

typedef struct _IMAGE_RESOURCE_DATA_ENTRY
{
DWORD  OffsetToData;
DWORD  Size;
DWORD  CodePage; // Possibly important to resource retrieval.
DWORD  Reserved; // Not important to resource retrieval.
}
IMAGE_RESOURCE_DATA_ENTRY, *PIMAGE_RESOURCE_DATA_ENTRY;
Ändert sich im Vergleich zur 32 Bit EXE irgendwas an der Größe der WORD und DWORD Felder? Ist die einzige Erklärung die mir spontan einfällt, außer, dass die Strukturen für 64 Bit EXEn komplett geändert wurden, was ich mir aber irgendwie auch nicht vorstelle kann.

Gruß Zacherl
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:56 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