MessageDlg og Exceptions
HejJeg har nogle problemer med exception der bl.a. ikke vises ens når jeg kører programmet inde fra Delphi og når jeg kører det via exe filen.
Kald ’der fejler’:
type
ExceptionBeregnNyeStykvaerdier = class(Exception);
::
Procedure Test
Begin
try
//kald til dll der fejler (med vilje for at teste exceptions!!)
except
raise ExceptionBeregnNyeStykvaerdier.Create('BeregnNyeStykvaerdier');
end;
end;
Kaldende sted i koden:
try
Test
except
on e: Exception do
MessageDlg(e.Message + ' ' + e.ClassName, mtError, [mbOk], 0)
end;
Problemer:
1) Når jeg kører testet inde fra Delphi kommer en fejl dialog boks med: ”BeregnNyeStykvaerdier Exception BeregnNyeStykvaerdier” hvilket er ok! Når jeg kører testen via exe filen kommer en fejl dialog boks med: ”BeregnNyeStykvaerdier.”. Hvorfor (er de ikke ens)!?
2) Fejlboksen har (via Delphi) en pæn størrelse, men når den kommer via kald af exe filen er den (fejlboksen) meget højere?
Screendump af ovenstående kan ses her: http://www.mortenrasmussen.net/error.doc
Et tillægs spørgsmål:
MessageDlg vises på midten af skærmen, kan man få den vist på midten af formen (fra det kaldende program) i stedet!? MessageDlgPos kan bruges, men jeg kan ikke lige se at man kan styrer/fange højden og bredden og dermed og dermed er der jo svært at lave en korrekt placdering!
Mange tak for evt. hjælp.
/Morten
