markus5766h Geschrieben October 1, 2016 at 13:05 Geschrieben October 1, 2016 at 13:05 was ist das schon wieder ? > > > > aktuelle Bindings ! stecken jetzt in jedem Update neue Fehler ? - dann kann ich mir das Ganze sparen - ich hab' keine Lust, den Beta-Tester zu spielen !!! UPDATE --> funktionierende Bindings !!! für Delphi ich hab' der Einfachheit halber alle Units in's Arbeitsverzeichnis kopiert, es sind also alle Units vorhanden. Zitieren
Nic Geschrieben October 3, 2016 at 12:46 Geschrieben October 3, 2016 at 12:46 Ich würde ja gerne helfen, aber zur Zeit habe ich den Entw.PC mit Delphi IDE und Lazarus nicht zur Hand. Nur so ein Gedanke: Wenn du in LEConverter statt var i: longint den einfachen Typen nimmst var i: integer Was sagt der Compiler? M.E. ist LEConverter schon länger so drin, damit man dir ev. helfen kann, schreib dazu welche IDE/Compiler (Delphi 7 XE?, Lazarus) du benutzt. Ansonsten fällt mir nur noch ein, die Compilerflags durchzusehen. Hast du nach dem 1091 gegoogelt? Zitieren
markus5766h Geschrieben October 3, 2016 at 13:10 Autor Geschrieben October 3, 2016 at 13:10 ... keine Änderung, das Problem scheint wohl im Typecast Result --> UInt64 zu liegen . . . werd' nächste Woche mal im RAD Studio 10 Berlin weiter probieren . . ., der Fehler scheint wohl "nur" unter Delphi-7 Versionen aufzutreten ? http://qc.embarcadero.com/wc/qcmain.aspx?d=9411 aber, by the way : warum ist i ein LongInt, für 0...7 reicht ja auch ein Byte ?! ... ich weiß, Speicher kostet (fast) nichts mehr, aber deshalb muß der ja nicht unnötig verbrannt werden . . . Zitieren
Nic Geschrieben October 3, 2016 at 20:56 Geschrieben October 3, 2016 at 20:56 Interessant ich benutze idR D7, aber damit keine Probleme. Hast du Range Checking enabled? Zitieren
markus5766h Geschrieben October 4, 2016 at 06:28 Autor Geschrieben October 4, 2016 at 06:28 ... benutze meist Delphi 7 Enterprise (reicht für die meisten Anwendungen), RangeCheck ist aktiviert. Zitieren
Nic Geschrieben October 4, 2016 at 06:50 Geschrieben October 4, 2016 at 06:50 Ich komme gar nicht soweit: 2 Fehler beim Erzeugen eines neuen Projects innerhalb der Bindings: [Fehler] BlockingQueue.pas(17): $IFEND erwartet, aber $ENDIF gefunden [Fataler Fehler] BlockingQueue.pas(25): Datei nicht gefunden: 'Generics.Collections.dcu' Mit D7 Pro. Zitieren
markus5766h Geschrieben October 4, 2016 at 07:20 Autor Geschrieben October 4, 2016 at 07:20 Ich komme gar nicht soweit: 2 Fehler beim Erzeugen eines neuen Projects innerhalb der Bindings: [Fehler] BlockingQueue.pas(17): $IFEND erwartet, aber $ENDIF gefunden [Fataler Fehler] BlockingQueue.pas(25): Datei nicht gefunden: 'Generics.Collections.dcu' Mit D7 Pro. ... das sind die neusten Units (Bindings), den Fehler hab' ich auch - benutze ältere (vorige Version) Bindings. Die Generics sind - glaub' ich - in neueren Delphi-Versionen vorhanden - Rad Studio (ab Version 9) ... http://docwiki.embarcadero.com/Libraries/Berlin/de/System.Generics.Collections sollte vielleicht in einer Versions-Abfrage gekapselt werden, sonst sind "ältere" Delphi-Versionen nicht mehr nutzbar, wie z.B. auch D7 und Unicode . . . das IFEND kann umgeschrieben werden . . . Zitieren
Nic Geschrieben October 4, 2016 at 07:41 Geschrieben October 4, 2016 at 07:41 Ja, ist ein Fehler hier, man muss CompilerVersion >= 20 abfragen Generics sind erst ab Delphi 2009(v20) eingeführt worden, v14 bedeutet D6, darum bei uns der Fehler: unit BlockingQueue; {$ifdef FPC}{$mode OBJFPC}{$H+}{$endif} {$ifndef FPC} {$ifdef CONDITIONALEXPRESSIONS} {$if CompilerVersion >= 20.0} {$define USE_GENERICS} {$ifend} {$endif} {$endif} Alle CompilerVersion Abfragen müssen mit ifend und nicht endif beendet werden. Bekomme sonst den "ifend" Fehler auch in IPConnection. Zitieren
Nic Geschrieben October 4, 2016 at 07:47 Geschrieben October 4, 2016 at 07:47 Ok, gefunden, schalte den Range Check aus, ist ja bei dir an, denn wenn ich z.B. im LEConverter {$R+} extra hinzufüge bekomme ich deinen 1091. Entweder in den globalen Compiler Flags oder so unit LEConverter; {$R-} {$ifdef FPC}{$mode OBJFPC}{$H+}{$endif} Zitieren
markus5766h Geschrieben October 4, 2016 at 07:52 Autor Geschrieben October 4, 2016 at 07:52 . . . vielleicht auch interessant : Delphi 10.1 Berlin STARTER EDITION Promotion Download "Embarcadero® Delphi 10.1 Berlin Starter is a great way to get started building high-performance Delphi apps for Windows. Delphi Starter includes a streamlined IDE, code editor, integrated debugger, two-way visual designers to speed development, hundreds of visual components, and a limited commercial use license. Database components and drivers are not included." https://www.embarcadero.com/de/products/delphi/starter/promotional-download Zitieren
Nic Geschrieben October 4, 2016 at 07:55 Geschrieben October 4, 2016 at 07:55 Wie lange kann man die kostenfrei benutzen Anbei die 3 geänderten Units aus den Bindings.IPConnection.pasLEConverter.pasBlockingQueue.pas Zitieren
markus5766h Geschrieben October 4, 2016 at 07:55 Autor Geschrieben October 4, 2016 at 07:55 Ok, gefunden, schalte den Range Check aus, ist ja bei dir an, denn wenn ich z.B. im LEConverter {$R+} extra hinzufüge bekomme ich deinen 1091. Entweder in den globalen Compiler Flags oder so unit LEConverter; {$R-} {$ifdef FPC}{$mode OBJFPC}{$H+}{$endif} o.k., danke wechsel dann mal von global auf Unit-bezogene Compiler-Schalter, da ich sehr viel mit Arrays arbeite, hab' ich den Range-Check meist global benutzt. Zitieren
markus5766h Geschrieben October 4, 2016 at 07:56 Autor Geschrieben October 4, 2016 at 07:56 Wie lange kann man die kostenfrei benutzen . . . zeitlich unbegrenzt, einzige Einschränkung ist das Fehlen der Upgrade-Berechtigung . . . aber für nothing . . . , kommerziell ist die Nutzung begrenzt (glaube 3 Monate), aber wer damit permanent Geld verdienen will, kann sich die Version sicher auch kaufen . . . Zitieren
Nic Geschrieben October 4, 2016 at 08:02 Geschrieben October 4, 2016 at 08:02 Für Tinkerforge Projekte und 32bit Progs reicht die Starter allemal Zitieren
photron Geschrieben October 4, 2016 at 08:30 Geschrieben October 4, 2016 at 08:30 Sorry, das mit dem $ifend war mir nicht bekannt: http://docwiki.embarcadero.com/RADStudio/Berlin/de/IFEND-Direktive_(Delphi) Der C1091 Fehler ist ein Compiler Bug: http://qc.embarcadero.com/wc/qcmain.aspx?d=9411 Range Check kann wieder angeschaltet werden. Hier eine verbesserte Version. Die sollte alle Probleme beheben, die in diesem Thread genannt wurden.tinkerforge_delphi_bindings_2_1_13_rc1.zip Zitieren
Nic Geschrieben October 4, 2016 at 08:42 Geschrieben October 4, 2016 at 08:42 Jo klappt jetzt und zumindest bei mir Zitieren
markus5766h Geschrieben October 4, 2016 at 14:59 Autor Geschrieben October 4, 2016 at 14:59 ... bei mir auch Zitieren
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.