Delphi-PRAXiS
Seite 32 von 192   « Erste     22303132 33344282132     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Klatsch und Tratsch (https://www.delphipraxis.net/34-klatsch-und-tratsch/)
-   -   Was nervt euch so, während der Programmierung oder so allgemein (https://www.delphipraxis.net/152540-nervt-euch-so-waehrend-der-programmierung-oder-so-allgemein.html)

stahli 17. Jul 2011 10:10

AW: Was nervt euch so, wärend der Programmierung.
 
Ich habe ein reines XE, da tritt das Problem auch manchmal auf.

himitsu 17. Jul 2011 10:18

AW: Was nervt euch so, wärend der Programmierung.
 
Jupp, ein reines 2010 (der fehler tritt aber mindestens seit TDE/D2006 regelmäßig, in leeren Delphis auf).

Nee, weder CnWizardz, noch GExperts, welche auch unbegdingt alle möglichen Tastenkombinationen, wie Strg+Shift+F, umbiegen müssen und als Ausgleich nichtfunktionierende Funktionen dahinterlegen, jedenfalls laut den erscheinden Fehlermeldungen.

Stevie 17. Jul 2011 14:39

AW: Was nervt euch so, wärend der Programmierung.
 
Zitat:

Zitat von himitsu (Beitrag 1112139)
Oder daß der debugger nach einer Exception nicht an der Exceptionzeile stehenbleibt, wenn man auf "Anhalten" klickt.
Mit try-except/finally kann der debugger wohl nicht umgehen ... hier gibt es z.B., in einer Prozedur, eine EConvert-Exception und anstatt der besch* Debugger nach der Fehlerstelle stehenbleibt, springt er erstmal ganz aus der Prozedur dauf und bleibt danach stehen, so daß man die Fehlerstelle nicht findet. :wall:

Keine Debug Informationen für besagte Unit? Dann bleibt er nämlich erst in der nächstmöglichen Zeile "mit den blauen Pünktchen" stehen.

himitsu 17. Jul 2011 14:53

AW: Was nervt euch so, wärend der Programmierung.
 
Nee nee, da ist alles vorhanden.
Im Einzelschritt kann man dort bequem durchlaufen, nur eben bei einer exception dreht das durch.

Hab nun aber den Fehler gefunden.

"Einfach" Dieses an den Anfang der Unit:
Delphi-Quellcode:
function StrToInt(const S: String): Integer;
begin
  try
    Result := SysUtils.StrToInt(S);
  except
    Beep;
  end;
end;
Oder ein bissl Aufgemotzter:
Delphi-Quellcode:
function StrToInt(const S: String): Integer;
begin
  try
    Result := SysUtils.StrToInt(S);
  except
    Result := 0;
    asm int 3 end;
    if S = '' then Beep; // nur, damit man sich S nochmal ansehn kann
  end;
end;
Hier würde man ja erwarten, daß der debugger bei
Delphi-Quellcode:
Result := SysUtils.StrToInt(S);
oder zumindestens bei
Delphi-Quellcode:
Result := 0;
(dem nächsten Befehl) zum stehen kommt, wenn der Debugger mit seiner "Erste Gelegenheit für Exception"-Meldung ankommt und man dort auf "Anhalten" klickt.

Nee, der springt erstmal ganz raus, aus der diesem StrToInt und ebenfalls aus der aufrufenden Methode, in die Äußerste Button-Click-Methode, nach dem Aufruf der untergeordneten Methode.
Selbst der Aufrufstack hilft nix, da die stelle angeteigt wird, wo der cursor nun steht.

Durch das Except, springt er nun nach F7 aber shockierender Weise in den Exceptblock zurück :shock: und dadurch, daß die Exception abgefangen wird, konnte ich mich dann über F7 weiterdebuggen und kam dann endlich, einen Befehl nach dem "bösen" StrToInt, im Code an. :firejump:

jaenicke 17. Jul 2011 17:54

AW: Was nervt euch so, wärend der Programmierung.
 
Liste der Anhänge anzeigen (Anzahl: 1)
Bei XE hält der Debugger in der aufrufenden Methode an und springt nicht weiter heraus. Testcode:
Delphi-Quellcode:
function StrToInt(const S: String): Integer;
begin
  try
    Result := SysUtils.StrToInt(S);
  except
    Result := 0;
    asm int 3 end;
    if S = '' then Beep; // nur, damit man sich S nochmal ansehn kann
  end;
end;

procedure Test;
var
  TestMe: Integer;
begin
  TestMe := StrToInt('dsfsdf435');
  ShowMessage(IntToStr(TestMe));
end;

procedure TForm4859.Button1Click(Sender: TObject);
begin
  Test;
end;
Der Debugger bleibt nach dem Anhalten auf der Zeile
Delphi-Quellcode:
TestMe := StrToInt('dsfsdf435');
stehen und geht mit F7 dann in das except.

// EDIT:
Und wenn ich Debug-DCUs aktiviert habe, bleibt er im ConvertErrorFmt direkt an der Exception-Stelle stehen und du siehst im Callstack direkt die Fehlerstelle:
Anhang 34717

b4st4rd 19. Jul 2011 10:15

AW: Was nervt euch so, wärend der Programmierung.
 
Wenn keine Klimaanlage vorhanden ist! :D

FredlFesl 19. Jul 2011 12:42

AW: Was nervt euch so, wärend der Programmierung.
 
Wenn eine Klimaanlage (wahlweise auszutauschen mit: Fenster, Kunstlicht) vorhanden ist und gleichzeitig mindestens ein weiterer Kollege, dessen Auffassung von 'erträglichen Arbeitsbedingungen' kontradiktionär zu erstens meinen und zweitens den allgemein anerkannten Definitionen sind.

Ein offenes Fenster zieht. Eine Klimaanlage ist 'künstlich', also ebenso abzulehnen wie Kunstlicht.

:wall:

b4st4rd 19. Jul 2011 13:15

AW: Was nervt euch so, wärend der Programmierung.
 
35° Zimmertemperatur und die Mitarbeiterin sagt: "Es ist so angenehm!"
Und man während dessen sein nasses T-Shirt versucht vom Körper zu lösen...

Stevie 19. Jul 2011 14:36

AW: Was nervt euch so, wärend der Programmierung.
 
Krawattenzwang

Jumpy 19. Jul 2011 14:37

AW: Was nervt euch so, wärend der Programmierung.
 
Da empfielt es sich doch in typischer Saunakleidung (Handtuch um die Hüften) zur Arbeit zu kommen und gelegentlich einen Aufguss zu machen (Cola oder Kaffe in den Rechner kippen). So kann man deutlich auf sein Problem aufmerksam machen...:-D


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:37 Uhr.
Seite 32 von 192   « Erste     22303132 33344282132     Letzte »    

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