Einzelnen Beitrag anzeigen

Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#12

Re: Problem mit dynamisch geladener DLL

  Alt 25. Jan 2007, 16:27
Ich würde die Messageboxen aus der Unit rausnehmen und besser so was machen:

Delphi-Quellcode:
function Load: Boolean;
begin
  hLib := LoadLibrary(...)
  result := hLib <> 0;
end;
und beim Aufrufen dann:
Delphi-Quellcode:
if not Load then
  MessageBox(Handle, PChar(SysErrorMessage(GetLastError)), 'Fehler - DLL laden', MB_ICONSTOP);
else
  ...;
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:
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;
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat