Einzelnen Beitrag anzeigen

Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#2

Re: DLL Funkt. Statisch/Dynamisch einbinden > Vor und Nac

  Alt 20. Dez 2007, 14:49
Hi,
was das Hooking angeht, so kann ich leider nicht viel dazu sagen.

Allgemein unterscheiden sich die beiden Varianten vorallem im Zeitpunkt der Bindung. Da DLLs gerade entworfen wurden, um das dyn. Binden zu erlauben, kommt die dyn. Bindung dem entsprechend näher. Hier kann der Code genau dann geladen werden, wenn er benötigt wird (und danach eben auch wieder entladen). Das schont ggf. Ressourcen. Vorallem aber ermöglicht dieses Verfahren es, dass man erstmal schaut, ob eine Datei gibt, die gebunden werden kann. Das Vorhandensein von Dateien lässt sich vorab prüfen und Fehler können leicht behandelt werden. Insbesondere kann man auch unbekannte DLLs laden (bei denen die Schnittstelle, aber nicht der Name bekannt ist, z.B. Plugins).
Für die statische Bindung spricht eigentlich nur die einfachere Syntax, da der Code zum Laden (auch nicht weiter kompliziert) entfällt. Hier muss jedoch der Name der Datei schon zur Übersetzungszeit bekannt sein, wird die zugehörige DLL nicht gefunden, löst dies immer eine Ausnahme aus.

Gruß Der Unwissende
  Mit Zitat antworten Zitat