Autor Beitrag
Flamefire
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1207
Erhaltene Danke: 31

Win 10
Delphi 2009 Pro, C++ (Visual Studio)
BeitragVerfasst: Di 12.06.07 20:42 
Ich habe eine DLL geschrieben, die ich über loadlibrarya() von einer anwendung laden lasse
jetzt will ich aber nach ner änderung nicht die ganze anwendung neustarten müssen
gibts eine möglichkeit, die dll neu zu laden (also alte dll austauschen, neue drüber, wie nach nem neustart des programms)?
Agawain
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 460

win xp
D5, MySQL, devxpress
BeitragVerfasst: Di 12.06.07 21:31 
hi

das würde ich nicht sagen, denn da hält windows wohl die VerwaltungsFinger drauf, denn eigentlich haben ja dll die Aufgabe mehreren Programmen zur Verfügung zu stehen, um Speicher zu sparen.

Ich würd mir nen kleines Fensterchen machen, natürlich nur für die Entwicklungsumgebung, da würde ich dann 2 Button rin, einer für freelibrary()
und einen für loadlibrary()

Gruß

Aga
HelgeLange
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 735
Erhaltene Danke: 6

Windows 7
Delphi7 - Delphi XE
BeitragVerfasst: Di 12.06.07 23:19 
oder einen button für ReloadLibrary :D

_________________
"Ich bin bekannt für meine Ironie. Aber auf den Gedanken, im Hafen von New York eine Freiheitsstatue zu errichten, wäre selbst ich nicht gekommen." - George Bernhard Shaw
Agawain
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 460

win xp
D5, MySQL, devxpress
BeitragVerfasst: Di 12.06.07 23:50 
Kann er denn dann die Datei auf der HD überschreiben, doch nicht, solange sie geladen ist.

Gruß

Aga
Agawain
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 460

win xp
D5, MySQL, devxpress
BeitragVerfasst: Mi 13.06.07 00:16 
hab dazu nichts gefunden, aber man könnte sich das ja einfach selbst konstruieren

Gruß

Aga
Reinhard Kern
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 591
Erhaltene Danke: 14



BeitragVerfasst: Mi 13.06.07 09:17 
user profile iconAgawain hat folgendes geschrieben:
Kann er denn dann die Datei auf der HD überschreiben, doch nicht, solange sie geladen ist.

Gruß

Aga


Hallo,

wenn die DLL nur zu bestimmten Zwecken benutzt wird, z.B. Druckerausgabe, dann macht man eben am Anfang des Druckens LoadLibrary und am Ende FreeLibrary - dann kann sie getauscht werden, wenn nicht gerade gedruckt wird.

Wenn sie dauernd benutzt wird, könnte man natürlich einen Befehl vorsehen, der die Software stoppt, FreeLibrary ausführt und dann auf einen Befehl zum Weitermachen wartet, dann muss natürlich wieder LoadLibrary ausgeführt werden. Lohnt sich nur selten, da würde ich doch die Software beenden und anschliessend neu starten.

Gruss Reinhard
Flamefire Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1207
Erhaltene Danke: 31

Win 10
Delphi 2009 Pro, C++ (Visual Studio)
BeitragVerfasst: Fr 15.06.07 10:10 
hmm schade...
die dll wird dauergaft verwendet registriert auch einen anwendungsspezifischen hotkey...
mit dll injection klappts nur teilweise...der hotkey geht z.b. nicht...aber n paar andre sachen...
wenn ich freelibray aufrufe, stürtzt das programm ab....