Entwickler-Ecke

Programmierwerkzeuge - Delphi2005: Gewisse Exception im Designmodus ausblenden


sternbach - Di 10.05.05 13:50
Titel: Delphi2005: Gewisse Exception im Designmodus ausblenden
hallo community-

gibt es eine möglichkeit, unter d2005, im designmodus, gewisse exceptions auszublenden oder nur einmal anzuzeigen?

konkret : ich verwende einige tqueries, die erst zur laufzeit verbunden werden, habe allerdings vordefinierte datenbankfelder. unter D7 kam eine edatabase exception nur einmal, nun unter delphi 2005 kommt diese jedes mal wenn ich
einen datenbankfeldnamen ändere (pro buchstabe eine exception!!!aaargh)

bitte um hilfe!!!

beste grüsse

peter


Moderiert von user profile iconMotzi: Topic aus Sonstiges verschoben am Di 10.05.2005 um 14:01
Moderiert von user profile iconTino: Titel geändert.


Der Bear - Di 10.05.05 14:18

Also, da ich nicht genau weiß ob es sich jetzt hier um eine Warnung des Compilers oder um einen echten Error handelt zwie Vorschläge:

1. Im Quelltext den Compiler anweisen, keine Warnungen auszugeben:


Delphi-Quelltext
1:
2:
3:
4:
5:
{$WARNINGS OFF}

//hier dein Programm bzw. die entsprechende Prozedur

{$WARNINGS ON}


2. Wenn der Fehler zur Laufzeit auftritt und einen echten Error darstellt, kannst du die Fehlerausgabe umlenken:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
procedure [..]
begin
  try
    begin
      //Hier dein entsprechender Code
    end
  finally;
end;


Nach finally erwartet er eine Anweisung was zu tun ist, und wenn du das freilässt wie im Beispiel, registriert er den Fehler zwar, gibt aber nix aus.

Hoffe ich konnte helfen.


sternbach - Fr 13.05.05 21:17

Nun, das Problem konnte ich lösen, wenn auch nicht ganz sauber.

Da das Problem nur beim Designen in der IDE auftritt, kann ich natürlich keine Exceptions mit try - except / finally abfangen.
So habe ich halt dann die exceptionauslösende Komponente abgeändert.

Ich habe Dac for Mysql in meinen Programmen eingesetzt und der ist der Verursacher.

Habe also einfach eine if (csDesigning in ComponentState) Abfrage eingebaut und so wird die "raise exception"
nur mehr ausserhalb der IDE aufgerufen. Allerdings sauber ist das nicht :)


Ich setze eigentlich auch zusätzlich Eurekalog ein, das Problem tritt sowohl mit und ohne Eurekalog auf.
Allerdings werkelt Fabio Dell'Aria, Eurekalog, bereits an einer Lösung, so schreibt er.


ciao :)

peter


Tino - Sa 14.05.05 09:00

Hallo!

Unter Delphi 7 hat man bei den Debugger-Optionen die Möglichkeit einige Exception so einzustellen, dass sie ignoriert werden.

Bei Delphi 2005 findest du diese Einstellung unter Tools -> Optionen -> Debugger-Optionen -> Borland Debugger -> Sprach-Exceptions

Gruß
Tino