markus5766h Posted October 1, 2016 at 01:05 PM Posted October 1, 2016 at 01:05 PM 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. Quote
Nic Posted October 3, 2016 at 12:46 PM Posted October 3, 2016 at 12:46 PM 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? Quote
markus5766h Posted October 3, 2016 at 01:10 PM Author Posted October 3, 2016 at 01:10 PM ... 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 . . . Quote
Nic Posted October 3, 2016 at 08:56 PM Posted October 3, 2016 at 08:56 PM Interessant ich benutze idR D7, aber damit keine Probleme. Hast du Range Checking enabled? Quote
markus5766h Posted October 4, 2016 at 06:28 AM Author Posted October 4, 2016 at 06:28 AM ... benutze meist Delphi 7 Enterprise (reicht für die meisten Anwendungen), RangeCheck ist aktiviert. Quote
Nic Posted October 4, 2016 at 06:50 AM Posted October 4, 2016 at 06:50 AM 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. Quote
markus5766h Posted October 4, 2016 at 07:20 AM Author Posted October 4, 2016 at 07:20 AM 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 . . . Quote
Nic Posted October 4, 2016 at 07:41 AM Posted October 4, 2016 at 07:41 AM 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. Quote
Nic Posted October 4, 2016 at 07:47 AM Posted October 4, 2016 at 07:47 AM 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} Quote
markus5766h Posted October 4, 2016 at 07:52 AM Author Posted October 4, 2016 at 07:52 AM . . . 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 Quote
Nic Posted October 4, 2016 at 07:55 AM Posted October 4, 2016 at 07:55 AM Wie lange kann man die kostenfrei benutzen Anbei die 3 geänderten Units aus den Bindings.IPConnection.pasLEConverter.pasBlockingQueue.pas Quote
markus5766h Posted October 4, 2016 at 07:55 AM Author Posted October 4, 2016 at 07:55 AM 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. Quote
markus5766h Posted October 4, 2016 at 07:56 AM Author Posted October 4, 2016 at 07:56 AM 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 . . . Quote
Nic Posted October 4, 2016 at 08:02 AM Posted October 4, 2016 at 08:02 AM Für Tinkerforge Projekte und 32bit Progs reicht die Starter allemal Quote
photron Posted October 4, 2016 at 08:30 AM Posted October 4, 2016 at 08:30 AM 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 Quote
Nic Posted October 4, 2016 at 08:42 AM Posted October 4, 2016 at 08:42 AM Jo klappt jetzt und zumindest bei mir Quote
markus5766h Posted October 4, 2016 at 02:59 PM Author Posted October 4, 2016 at 02:59 PM ... bei mir auch Quote
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.