Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Herausfinden welche Komponente welche DLL einbindet (https://www.delphipraxis.net/154023-herausfinden-welche-komponente-welche-dll-einbindet.html)

DelphiManiac 25. Aug 2010 12:13

Herausfinden welche Komponente welche DLL einbindet
 
Hallo,

ich habe zurzeit folgendes Problem:

Ich habe ein Programm entwickelt welches auch Fremdkomponenten einbindet. Jetzt gab es ein Problem mit GDIPlus, anscheinend bindet eine Komponente die GdiPlus.dll ein und diese ist ja erst ab WinXP systemseitig vorhanden. Deshalb läuft mein Programm nicht unter W2K.
Natürlich könnte ich die DLL mitlieferen, aber eigentlich will ich wissen ob sie überhaupt benötigt wird, bzw. welche Komponente diese überhaupt brauch?
Mit dem Dependency Walker habe ich auch nur herausgefunden, dass es versucht wird die DLL einzubinden...
Kurzum,

ich bräuchte eine Auswertung über mein Projekt, das mir die DLLs aufführt und den dazugehörgen Quellen...

eine Textsuche hat mich da leider auch nicht weitergebracht, evtl habt ihr ja ein Vorschlag...

Vielen Dank

DelphiManiac

mkinzler 25. Aug 2010 12:20

AW: Herausfinden welche Komponente welche DLL einbindet
 
Liefere diese mit und lass den Installer entscheiden, ob er diese auf den Rechner kopiert

Bernhard Geyer 25. Aug 2010 12:24

AW: Herausfinden welche Komponente welche DLL einbindet
 
Zitat:

Zitat von DelphiManiac (Beitrag 1044801)
ich bräuchte eine Auswertung über mein Projekt, das mir die DLLs aufführt und den dazugehörgen Quellen...

Gibts AFAIK nicht. Du kannst nur bei Wissen über eine benötigt DLL dies Funktionsdeklarationen in den PAS-Dateien suchen.

himitsu 25. Aug 2010 12:29

AW: Herausfinden welche Komponente welche DLL einbindet
 
Die Import-Liste des Programms listet auf, welche Funktionen irgendwo im Programm aufgerufen werden.

Wenn das Programm, bzw. die wichtigen Teile mit entsprechenden Debuginfos versehn sind, dann könnte man dort "nachsehn" wo diese Funktionen aufgerufen werden, und versucht dann rauszubekommen zu welcher "Funktion" der Codeteil gehört, wo dieser Aufruf drinsteht ... aber ohne entsprechende Debuginfos isses nahezu unmöglich und auch so wird es nicht einfach werden.



Hierbei werden aber nur statische Aufrufe beachtet.
Bei dynamischen Aufrufen kann man sowas garnicht erfahren, bevor es nicht in laufenden Programm aufgerufen wird.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:06 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