Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi programm in dll (https://www.delphipraxis.net/11180-programm-dll.html)

Illuminator-23-5 1. Nov 2003 17:51

Re: programm in dll
 
so menschlich kann irren sein:
mein
ShellExecute(0,'','%windir%\System32\rundll32.exe' ,'Test.dll,Main',nil,0);

funzt doch nicht:(
wie kann man das dann ausführen?

himitsu 1. Nov 2003 18:46

Re: programm in dll
 
So in etwas hatte ich das vorhin auch schon versucht, bloß ohne das ",Main".
"rundll32.exe" ist, glaube ich zumindestens, schon der richtige Weg.


DLL in EXE => EXE in DLL
Wenn du es rausfindest, hier die Änderungen im Project1.dpr meines Beispiels:
"Program Project1;" => "Library Project1;"
(ergibt "Project1.exe" => "Project1.dll")

Und für Unit2.pas:
"Project1.exe" => "Project1.dll"
Delphi-Quellcode:
  Function berechnen(W1, W2: Integer): Integer; external 'Project1.dll';

Illuminator-23-5 1. Nov 2003 19:04

Re: programm in dll
 
ohne das main funzts auch noch nicht, da muss noch was dran (glaub ich)

das importieren der funktion löst glaub ich auch nicht das problem, da dann die dll nicht von rundll32.exe sondern vom anderen Programm geladen wird!
Das programm darf eben nur dazu dienen, die dll auszuführen, die dann auch noch weiterlaufen sollte, wenn man das programm beendet!

himitsu 1. Nov 2003 19:21

Re: programm in dll
 
Das es MIT und OHNE dem ",Main" nicht geht hab ich doch gemerkt und glaube auch gesagt.
Das es geht weis ich auch, aber das wie ... ist mir entfallen.

PS. Die Bsp. sollen ja nur zeigen, das es möglich ist DLL und EXE zu vermischen. Jetzt müssten wir nur noch raus bekommen wie diese sch** DLL aufgerufen werden muß, so das sie alleine läuft.

SirThornberry 1. Nov 2003 20:00

Re: programm in dll
 
Öhm, ich versteh jetzt nicht wo das problem ist. Du kannst doch ganz normal eine Anwendung basteln und dann das was in der DPR datei ist in ein DLL-Projekt packen. Und dann das ganze kompilieren...

SirThornberry 1. Nov 2003 20:03

Re: programm in dll
 
@himitus: eine DLL kann nicht allein laufen, sie kann maximal in einer anderen Anwendung laufen und wenn das nur die rundll32.exe ist...

himitsu 1. Nov 2003 20:06

Re: programm in dll
 
Das ist doch das Prob, wie startet man die dort (rundll32.exe) :?:

Daniel B 1. Nov 2003 20:12

Re: programm in dll
 
Zitat:

Zitat von himitsu
Das ist doch das Prob, wie startet man die dort (rundll32.exe) :?:

Schaumal da, der vorletzte Beitrag, da ist ein Beispiel mit drin, wie man die RunDLL zum ausführen nutzen kann.
http://www.delphipraxis.net/viewtopic.php?t=2915

SirThornberry 1. Nov 2003 20:33

Re: programm in dll
 
wenn du das mit der rundll und dem starten der dll nicht hinn bekommst schreib dir ne eigene hostapplication die eine beliebige dll einbindet...

himitsu 1. Nov 2003 20:41

Re: programm in dll
 
Liste der Anhänge anzeigen (Anzahl: 1)
He Illuminator-23-5,
jetzt haben wir's doch endlich :firejump:

'en kleines Script (Start.bat) und das war's:
RunDLL32.exe Project1.dll,RunDLL

:oops: Na gut, der kleine Fehler beim beenden. Aber darum ging es ja nicht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:30 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz