Entwickler-Ecke
Windows API - DLL-Programmierung / Aufruf per rundll32.exe
mb - Mo 20.10.03 15:44
Titel: DLL-Programmierung / Aufruf per rundll32.exe
Hallo!
Ich möchte Funktionen aus einer eigenen DLL nicht aus einer Delphi-Anwendung heraus sondern per rundll32.exe aufrufen. Wie geht das? Ich hatte bei meinen Versuchen keinen Erfolg.
bIce - Mo 20.10.03 19:08
Die Funktionen müssen besondere Vorgaben erfüllen um aufgerufen werden zu können.
Delphi-Quelltext
1: 2:
| function MyMsg(hwnd: Integer; hinst: Integer; szCmdLine: PChar; reserved: Longint): Integer; stdcall; |
Die Parameter an die Funktion musst Du über szCmdLine abfragen
laut
MS-Knowledgebase [
http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/q164/7/87.asp&NoWebContent=1] muss der letzte Parameter (reserved:LongInt) nicht vorhanden sein, kommt aber bei mir unter Win98 zu einem Fehler nach dem Aufruf der funktion.
Die Funktion muss noch exportiert werden, damit sie rundll32 finden kann:
Wenn Du die Funktion aufrufen willst, musst Du zwischen der Dll dem Komma und dem Funktionnamen keinen Leerzeichen angeben.
Bsp:
Quelltext
1:
| rundll32 Project2,MyMsg Hallo |
EDIT: Wobei noch anzumerken ist, dass Du einen beliebigen Funktionsnamen wählen kannst. ;)
mb - Mo 20.10.03 21:00
ok, prima.
vielen dank.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!