Quickaddress

grosstefan

Grünschnabel
Hallo alle zusammen,
gibt es hir jemanden der schonmal mit dem Programm "Quickaddress" zu tun hatte?

ich suche hilfe beim einbinden der dll in ein laufendes c++ project.

Danke schon im voraus
 
moin


Beschreib dein Problem doch mal genauer!
Wieso ist es so schwierig die DLL einzubinden?
Oder weisst du generell nciht wie man DLLs einbindet?


mfg
umbrasaxum
 
Ich weiss gar nicht wie man eine dll so einbindet, dass sie erst geladen wird wenn die Quickaddress funktion gerufen wird.
(also nicht beim starten des programm's --> das weiss ich)

danke im voraus
stefan
 
Quickaddress ist ein programm welches es ermoeglicht adressen mit einer externen (quickaddress eigene) datenbank zu pruefen.
d.h. im Aufruf werden adressdaten uebergeben und rueckgabe sind gepruefte daten oder ein invalid.
 
Es gibt 2 Möglichkeiten, Dlls einzubinden:
-statische Bindung: hierbei wird die Dll bei Programmstart geladen und die Funktionszeiger aufgelöst.
-dynamische Bindung: Dlls werden mit den Funktionen LoadLibrary irgendwann zur Laufzeit in den Speicher geladen, mit GetProcAddress ein Funktionszeiger geholt. Mit FreeLibrary wird die Dll wieder freigegeben.

Vorteile der dynamischen Bindung:
-Es müssen nicht zur gesamten Laufzeit des Programms alle Dlls im Speicher gehalten werden
-Das Programm ist in der Lage flexibel darauf zu reagieren, falls zB eine Dll nicht vorhanden ist
Nachteile:
-Umständlichere Programmierung (finde ich)
-Langsamer als statische Bindung

Also überleg dir gut, ob du wirklich dynamisch binden willst.

grosstefan hat gesagt.:
Ich weiss gar nicht wie man eine dll so einbindet, dass sie erst geladen wird wenn die Quickaddress funktion gerufen wird
Das geht auch so nicht, jedenfalls nicht automatisch. Wenn du eine Dll dynamisch laden willst, hast du mit LoadLibrary usw automatisch einen Code-Mehraufwand, selbst wenn du den mit Klassen o.ä. gering hälst.
 
Zurück