Autor |
Beitrag |
TheUnknown
      
Beiträge: 334
|
Verfasst: Di 22.04.03 11:42
Moin!
Ich nutze Funktionen einer DLL - Klappt alles wunderbar... Jetzt möchte ich es so machen, dass die DLL in der EXE einkompiliert wird, damit sie auch immer vorhanden sein wird.
Wie muss ich es machen, dass die EXE dann nicht direkt nach einer DLL im %PATH% sucht, sondern, dass sie weiss, dass die DLL als Resource in der EXE liegt und auch auch auf die Ressourcen-DLL zugreift - ohne dass ich die DLL erst entpacken muss...
Ich habe schon alles versucht, aber ich bekomms einfach nicht hin...
|
|
mirage228
      
Beiträge: 338
Win 7 Prof.
Delphi 2005 Prof., Delphi 2010 Prof.
|
Verfasst: Di 22.04.03 11:59
Leg die Funktionen aus der DLL einfach ins Hauptprogramm (falls du den Source der DLL hast) und kompiliere sie einfach mit ein.
mfG
mirage228
_________________ May the source be with you, stranger.
|
|
Motzi
      
Beiträge: 2931
XP Prof, Vista Business
D6, D2k5-D2k7 je Prof
|
Verfasst: Di 22.04.03 12:06
TheUnknown hat folgendes geschrieben: | Moin!
Ich nutze Funktionen einer DLL - Klappt alles wunderbar... Jetzt möchte ich es so machen, dass die DLL in der EXE einkompiliert wird, damit sie auch immer vorhanden sein wird.
Wie muss ich es machen, dass die EXE dann nicht direkt nach einer DLL im %PATH% sucht, sondern, dass sie weiss, dass die DLL als Resource in der EXE liegt und auch auch auf die Ressourcen-DLL zugreift - ohne dass ich die DLL erst entpacken muss...
Ich habe schon alles versucht, aber ich bekomms einfach nicht hin... |
Das wird so nicht gehen. Das Problem ist ähnlich wie das eine Exe die nur als Resource vorhanden ist auszuführen ohne diese auf die Festplatte zu speichern. Es ist möglicherweise sogar machbar, allerdings gibt es keine dokumentierte Möglichkeit und ich hab auch noch nie irgendwo was davon gehört/gelesen, dass es jemand gemacht/geschafft hätte.
Fazit: entweder mach es so wie mirage228 geschrieben hat (sofern das möglich ist) oder aber du musst damit leben die Dll auf die Festplatte zu spielen (und wenn es nur für die Laufzeit deines progs ist).
_________________ gringo pussy cats - eef i see you i will pull your tail out by eets roots!
|
|
toms
      
Beiträge: 1099
Erhaltene Danke: 2
|
Verfasst: Di 22.04.03 17:38
Zitat: | und ich hab auch noch nie irgendwo was davon gehört/gelesen, dass es jemand gemacht/geschafft hätte |
Hab schon mal was über ein Tool (od. sogar Delphi Komponente) gelesen,
welche das kann.
Hab leider den Link grad nicht zur Hand.
|
|
Motzi
      
Beiträge: 2931
XP Prof, Vista Business
D6, D2k5-D2k7 je Prof
|
Verfasst: Di 22.04.03 17:40
toms hat folgendes geschrieben: | Zitat: | und ich hab auch noch nie irgendwo was davon gehört/gelesen, dass es jemand gemacht/geschafft hätte |
Hab schon mal was über ein Tool (od. sogar Delphi Komponente) gelesen,
welche das kann.
Hab leider den Link grad nicht zur Hand. |
Was? Eine Dll-Resource verwenden oder eine Exe-Resource starten? Würd mich interessieren..!
_________________ gringo pussy cats - eef i see you i will pull your tail out by eets roots!
|
|
MSCH
      
Beiträge: 1448
Erhaltene Danke: 3
W7 64
XE2, SQL, DevExpress, DevArt, Oracle, SQLServer
|
Verfasst: Di 22.04.03 17:43
imho geht das nicht. Eine Exe-Datei hat einen bestimmten Aufbau, da einfach mal codes aus Dlls reinzuschieben dürfte was für freaks sein, wenn überhaupt geht, man müsste den gesamten Fileaufbau der Exe neu umbasteln. *brrr*
Das einzige was geht, dass eine EXE Datei auch funktionen exportiert, so dass du diese auch linken kannst (was imho horizontaler Schwachsinn ist, sofern exe und Funktion in einer Datei stehen).
Aber ich versteh das Prob nicht, warum sowas?
grez.
msch
|
|
toms
      
Beiträge: 1099
Erhaltene Danke: 2
|
Verfasst: Di 22.04.03 22:58
Weiss leider nicht mehr, wo ich das "Teil" gesehen habe aber
schaut euch mal thinstall an:
thinstall.com/help/i....html?dlllinking.htm
|
|
wulfskin
      
Beiträge: 1349
Erhaltene Danke: 1
Win XP
D5 Pers (SSL), D2005 Pro, C, C#
|
Verfasst: Di 22.04.03 23:27
Assarbads DLL-Tutorial hat folgendes geschrieben: | DLLs Huckepack – DLLs als binäre Ressource |
Ich denke, dass ist genau das was du suchst!
Zu finden auf [url=www.assarbad.org]Assarbad's Homepage[/url]!
Gruß wulfskin!
_________________ Manche antworten um ihren Beitragszähler zu erhöhen, andere um zu Helfen.
|
|
TheUnknown 
      
Beiträge: 334
|
Verfasst: Mi 23.04.03 08:47
WOW! Welch' Resonanz!
Durch einen Link, den jemand von Euch gepostet hat, fand ich das, was ich in etwa suchte... Ich hab's mir zurecht gemodelt und dann so gestrickt, dass die DLL ist TempDir gelegt wird, wenn sie nicht schon dort lagert...
Der Sinn dahinter war, dass man die erforderliche DLL wirklich IMMER vorliegen hat - ohne Installation und so weiter, oder, wenn die Datei auf CD liegt, und die DLL vergessen wurde zu brennen...
DANKESCHÖN! Ich breche an dieser Stelle mal eine Lanze für dieses Forum - DANKE Jungs und Mädels (sofern es die - hoffentlich - hier gibt!)...
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mi 23.04.03 10:56
Source dazu findest du auch in meinem Crypter. Die Verschlüsselungs-DLL ist auch als Ressource in die Exe kompiliert.
@Motz: Das mit der Exe geht nur unter 2000 und höher. Also aus der Ressource direkt satrten ohne sie voprher auf die Platte zuschreiben. Ich hatte sogar mal Code dafür. Wenn du Nico kennst, schreib ihn mal an. Ode rich frage ihn mal, wenn er das nächste mal im ICQ ist, wenn ich daran denke.
|
|
Motzi
      
Beiträge: 2931
XP Prof, Vista Business
D6, D2k5-D2k7 je Prof
|
Verfasst: Mi 23.04.03 12:22
Luckie hat folgendes geschrieben: | @Motz: Das mit der Exe geht nur unter 2000 und höher. Also aus der Ressource direkt satrten ohne sie voprher auf die Platte zuschreiben. |
Also doch.. dass es eine irgendeine Möglichkeit gibt hab ich mir eh gedacht, aber sicher keine einfache..!
Zitat: | Ich hatte sogar mal Code dafür. Wenn du Nico kennst, schreib ihn mal an. Ode rich frage ihn mal, wenn er das nächste mal im ICQ ist, wenn ich daran denke. |
Klar kenn ich unsren Nico!  Werd ihn bei gelegenheit mal darauf ansprechen..
_________________ gringo pussy cats - eef i see you i will pull your tail out by eets roots!
|
|