Einzelnen Beitrag anzeigen

Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

Re: IMAGEBASE - wichtiges zu DLL und Co.

  Alt 10. Dez 2009, 12:20
Ich glaube, das lohnt den Aufwand nicht. Nach einem Servicepack oder Update oder Patch, können die DLLs schon wieder wo anders liegen.

Zitat:
Daher kann man sich bestimmt auch ganz gut vorstellen, daß man in solch einem Fall mit einigen Einbußen (Rechenzeit...) rechnen muß.

Es ist also schon "wichtig", daß man seinen DLL's ein freies Plätzchen sucht.
Ich glaube, die Einbussen sind so gering, dass dies nicht wirklich ins Gewicht fällt.

Aber es fehlt ein wichtiger Hinweis bei dir, wenn ich ihn nicht überlesen habe. Um die Adressen innerhalb eines Images zu verschieben, gibt es in jedem Image den sogenannten Realloctable. Es gibt Programme mit denen man diese Tabelle entfernen kann, um die Größe des Images zu reduzieren. Bei Exe-Dateien ist das meist kein Problem, da sie als erstes geladen werden und so die Baseaddress immer frei ist. Bei DLLs ist dies natürlich, wie du erklärt hast, nicht der Fall. Entfernt man aus einer DLL den Realloctable, kann Windows die neuen Adressen innerhalb der DLL nicht neu berechnen und die DLL kann nicht geladen werden.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat