![]() |
showmessage aus DLL
mahlzeit...
ich versuche grad die sache mit den DLL's näher zuverstehen. das tut von assabard ist mir schon wieder zu tiefgründig, deshalb habe ich es erstmal beiseite gelegt. also ich habe eine DLL da steht drin:
Delphi-Quellcode:
und in meinem aufrufenden programm steht:
library FirstDll;
uses SysUtils, Dialogs, Classes; {$R *.res} procedure Hinweis; begin showmessage('Procedure aus DLL'); end; exports Hinweis; begin end.
Delphi-Quellcode:
ich bekomme aber weder die meldung das die dll nicht gefunden wurde noch das showmessage daraus. es passiert einfach nix noch nicht einmal eine exception oder av.type TTestFunktion = procedure; procedure TForm1.Button1Click(Sender: TObject); var TestFunktion : TTestFunktion; FuncPtr : TFarProc; DLLHandle : THandle; begin DLLHandle := LoadLibrary(PChar('FirstDll.dll')); FuncPtr := GetProcAddress(DLLHandle,'Hinweis'); if FuncPtr <> nil then begin @TestFunktion := FuncPtr; FuncPtr:=nil; end else showMessage('Funktion oder DLL nicht gefunden!'); FreeLibrary(DLLHandle); end; |
Re: showmessage aus DLL
Du musst du Prozedur ja auch noch aufrufen, also nach:
Delphi-Quellcode:
noch
FuncPtr:=nil;
Delphi-Quellcode:
schreiben ;)
TestFunktion;
MfG Pr0g |
Re: showmessage aus DLL
Ich würde dir außerdem von ShowMessage in DLL's abraten, da ShowMessage meines Wissens nach, auf der VCL aufbaut, was leicht "unschöne" folgen haben könnte, wenn sie aufgerufen wird. Daher, mein Tipp: In DLL's grundsätzlich MessageBox verwenden.
ciao, Philipp |
Re: showmessage aus DLL
cool danke. es kann doch manchmal so einfach sein...
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:36 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz