![]() |
FMX Android64 - Problem mit Haltepunkten
FMX - Mir ist beim Debuggen von
![]() Ich setze im Code unten in der Zeile label1.Text einen Haltepunkt mit "Bedingung nr=11". Ich starte das Programm und klicke auf Button1. In der App wird bei Label1 "11" (!) angezeigt. Ich erwarte "7". Ich ändere die Haltepunkt Bedingung auf nr=7 und klicke Button1. Delphi hält beim Haltepunkt nicht an.
Delphi-Quellcode:
Und wenn ich unter Haltepunkt Bedingung nR=11 schreibe und den Button drücke, dann wird angezeigt "Ungültige Bedingung für Haltepunkt: nR=11. Fehlermeldung: error: use of undeclared identifier 'nR' error: 1 errors parsing expression". Mit letzterem kann ich gut leben. Offenbar muss ich bei Android auf Gross-/Kleinschreibung achten.
procedure TForm104.test( nr : integer );
begin label1.Text := nr.ToString; end; procedure TForm104.Button1Click(Sender: TObject); begin test( 7 ); end; Ist meine Delphi Installation vermurkst oder stimmt da momentan was nicht? Unter Windows klappt es wie erwartet. |
AW: FMX Android64 - Problem mit Haltepunkten
Kann sein, dass Android Xcode case-sensitiv ist ... dann passt das Verhalten mit nR schon irgendwie,
auch wenn es für Delphi eigentlich "ungewöhnlich" ist. bei nr=11 kann es nicht anhalten. Was steht denn ohne den Haltepunkt im Label? Geht ein doppeltes == ?
Delphi-Quellcode:
nr==11
Xcode ist ja mehr c-ig. :stupid: |
AW: FMX Android64 - Problem mit Haltepunkten
Seit wann ist XCode für Android? ;-)
Unter Android wird m.W. noch der GDB als Debugger benutzt. |
AW: FMX Android64 - Problem mit Haltepunkten
Hoi himitsu
danke für deine rasche Reaktion. Ich nehme immer den gleichen Code (siehe #1). Ohne Haltepunkt: Ich drücke den Button1, test(7) wird aufgerufen und in der App lese ich dann tatsächlich auch 7 (wie erwartet). Mit Haltepunkt mit Bedingung nr=11. Wenn ich jetzt den Button drücke, wird ja wieder test(7) aufgerufen und ich erwarte (natürlich nicht, dass angehalten wird, da ja 7<>11 ;-), aber) dass ich in der App wiederum 7 angezeigt erhalte. Es steht aber jetzt 11 da. Die Haltepunkt Bedingung nr=11 wird quasi als "Wert 11 für nr übernehmen" interpretiert. Das ist doch ein Bug? Du hast Recht. Setze ich als Haltepunktbedingung nr==11 bzw. nr==7 klappt es unter Androd64 wie erwartet. BESTEN DANK!:thumb: Kompiliere ich nun mit Windows, wird natürlich eine Fehlermeldung angezeigt: Ungültige Bedingung für Haltepunkt: nr==7. Fehlermeldung: E2029 Ausdruck erwartet, aber '=' gefunden". D.h. man kann offenbar bei FMX Projekten für Android und Windows nicht die gleiche Syntax für Haltepunkte verwenden; es gibt sicher Gründe dafür. |
AW: FMX Android64 - Problem mit Haltepunkten
Ja, verwechselt. Xcode war für Apple :oops:
Java-irgendwas im Android, aber ist ja auch so c-ig :lol: Zitat:
Da muß Embarcadero wohl mal was reparieren (übersetzen: Delphi<->C++). Von PHP kenn ich auch noch sowas, wo bei
Delphi-Quellcode:
nicht verglichen, sondern zugewiesen wird. :wall:
if (i = 3) {
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz