Re: Problem mit dynamisch geladener DLL
Jap. Ich werd (mit deiner Erlaubnis) diese Methode überall da wo es nötig ist einbauen. Oder ist es besser alle Proceduren in einer Loader-Unit zu kapseln und die uses zu ersetzen?
|
Re: Problem mit dynamisch geladener DLL
Ich würde die Messageboxen aus der Unit rausnehmen und besser so was machen:
Delphi-Quellcode:
und beim Aufrufen dann:
function Load: Boolean;
begin hLib := LoadLibrary(...) result := hLib <> 0; end;
Delphi-Quellcode:
Dann kannst du je nach dem entscheiden, ob du eine Fehlermeldung an der Stelle willst oder nicht. Oder du machst es mit Exceptions, wenn dir das lieber ist:
if not Load then
MessageBox(Handle, PChar(SysErrorMessage(GetLastError)), 'Fehler - DLL laden', MB_ICONSTOP); else ...;
Delphi-Quellcode:
function Load: Boolean;
begin hLib := LoadLibrary(...) if hLib = 0 then raise Exception.Create(SysErrorMessage(GetLastError)); end;
Delphi-Quellcode:
try
Load; except on E: Exception do MessageBox(Handle, PChar(E.Message), 'Fehler - DLL laden', MB_ICONSTOP); end; |
Re: Problem mit dynamisch geladener DLL
mhm... gute Idee. Vielleicht eher unwichtige Frage... aber... DLL nur in einer Unit laden und Uses anpassen oder in jeder unit die Externals austauschen? Was wäre da günstiger?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:59 Uhr. |
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