Hallo,
wenn ich eine dll und den entsprechenden Header einbinde (über den LIBS-Pfad) und dann in diesem Header eine stinknormale Definition einer Konstante (z.B. MSG_CLIENT 0x8000 + 1000) ändere (z.B. zu MSG_CLIENT 0x8000 + 1001), wird der Wert dann wirklich geändert, sobald er in der (alten) dll aufgerufen wird oder wurde dieser Wert beim Kompilieren sozusagen "fest" reingeschrieben? Mit "alt" mein ich, daß die dll mit dem unveränderten Header ausgeliefert wurde und dann nicht nochmal neu kompiliert wurde.
Grüße,
Megadime.
Änderung Header -> Auswirkung auf dll ?
Eben. Das ist ja genau die Frage.
Es ist klar, daß sich die dll nicht ändert, meine Frage war aber, ob der Header die Werte der Konstanten vielleicht zur Laufzeit einsetzt.
Ich nehme an, du willst uns mitteilen, daß sich nichts ändert, d.h. die Werte gleich bleiben bzw. beim Kompilieren "fest" in den dll-Code eingebunden wurden.
Es ist klar, daß sich die dll nicht ändert, meine Frage war aber, ob der Header die Werte der Konstanten vielleicht zur Laufzeit einsetzt.
Ich nehme an, du willst uns mitteilen, daß sich nichts ändert, d.h. die Werte gleich bleiben bzw. beim Kompilieren "fest" in den dll-Code eingebunden wurden.
-
- Beiträge: 200
- Registriert: 9. Juli 2010 19:31
Der Header beschreibt die Funktionen und Variablen (auch Defines), wie sie zum Zeitpunkt der Erstellung der DLL sind.
Änderst Du den Header, bleibt die DLL trotzdem so wie sie damals kompiliert wurde.
Was Du erreichst, ist dass die exe, die mit dem neuen, geänderten Header kompiliert wurde nicht richtig auf die DLL zugreifen kann.
Änderst Du den Header, bleibt die DLL trotzdem so wie sie damals kompiliert wurde.
Was Du erreichst, ist dass die exe, die mit dem neuen, geänderten Header kompiliert wurde nicht richtig auf die DLL zugreifen kann.
Linux, das längste Text-Adventure aller Zeiten