Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi [gelöst] Delphi 5 zu 2009 und Cassy? (https://www.delphipraxis.net/133310-%5Bgeloest%5D-delphi-5-zu-2009-und-cassy.html)

jesaa 29. Apr 2009 14:34


[gelöst] Delphi 5 zu 2009 und Cassy?
 
Guten Tag allerseits

Ich versuche für ein Cassy eine Anwendung zu Programieren, die mir verschieden Timersignale, und Spannungssignale ausliest und später mal in einen Graphen umsetzt.

Das mit dem auslesen der Timer- und Spannungssignale Funktionierte auch unter Delphi 5.
Wenn ich aber veruche das ganze in Delphi 2009 umzusetzen funktioniert das nicht.

Von Leybold (den Herstellern des Cassys) gibt es eine Komponete mit der man das Cassy mit Delphi ansteuern kann.
Diese Komponente (.bpl) benötigt rtl und vcl. Die Installation bei Delphi 5 funktionierte anstandslos, während bei Delphi 2009 es erst funktionierte als ich die .dcu datein in das verzeichnis imports kopiert hatte.

Das Problem liegt wahrscheinlich in der Kommunikation mit dem Cassy(die erfolgt per USB). Die Anwendung die ich mit Delphi 5 Compiliert habe funktioniert, und bestätigt das ein Cassy gefunden wurden.
Wenn ich den selben Quellcode (der von mir stammt) auf Delphi 2009 Compiliere, dann scheint er das Cassy nicht zu finden.

Ich hab inzwischen die .dcu dateien da wieder raus gelöscht, um die komponetnte noch mal komplett nue zu installieren. Das funktioniert allerdings inzwischen auch nicht mehr, da anscheinend die system.pas fehlt ... (ist aber in sourc/win32/rtl/sys vorhanden).
[edit] Das mit der system.pas hat sich erledigt, hatte sie ausversehn mit dem lib ornder in den Papierkorb verschoben ... desweiteren hatte ich die dcu's in eben jenen ordner kopiert[/edit]

Ich bin für jegliche Ideeen und ansätze offen

Danke Jesaa

mkinzler 29. Apr 2009 14:37

Re: Delphi 5 zu 2009 und Cassy?
 
Dcu sind (Delphi-)versionsabhängig. Laut Beschreibung liegt aber auch Delphisource vor

jesaa 29. Apr 2009 14:48

Re: Delphi 5 zu 2009 und Cassy?
 
Soweit ich das verstanden hab, baut sich das Delphi aus der .bpl datei selber die .dcu's ... ich hatte die .bpl datei Comiliert (und dannach installiert), danach waren die dcu's da und die hab ich dann genommen.

mkinzler 29. Apr 2009 14:51

Re: Delphi 5 zu 2009 und Cassy?
 
Bpls sind auch versionsabhängig. Du musst das/die dpks öffenn und installuieren, dann erzeugt er die passenden dcus, bpl, dcp.

jesaa 29. Apr 2009 14:58

Re: Delphi 5 zu 2009 und Cassy?
 
Sorry mein Fehler ... ich hab die dpk genommen, compiliert und installiert ... das ergbnis is das die dcus usw. in dem verzeichnis liegen wo die dpk drinn lag.
Die dcus die beim Compilieren entstanden sind, hatte ich testweise dann mal in das lib verzeichis Kopiert, damit kannte er dann zwar die units, aber nach dem Compilieren des ganzen Programms was ich gescreiben habe trat oben genanter fehler mit dem Cassy auf.

OldGrumpy 29. Apr 2009 16:59

Re: Delphi 5 zu 2009 und Cassy?
 
Mit D2009 haben sich die Basistypen geändert, String ist jetzt z.B. standardmäßig ein Widestring. Gehe den Source der Cassy-Komponente durch und ändere Char/String zu AnsiChar/AnsiString usw. - dann müsste es wieder funktionieren.

jesaa 13. Mai 2009 13:57

Re: Delphi 5 zu 2009 und Cassy?
 
Danke für den hinweis, so wie der Code aussieht scheint das genau daran zu liegen.
Ich weis allerdings nicht was ich mit funktionen wie chr() machen soll. Hier ist die Funktion anscheined ein für WideChars gedacht, und kannn nicht mit AnsiChars. Kenn ihr eine alternative?
Änlich is es bei der funktion Write(Ansichar,integer). Hier ist er der meinung das da unkompatible typen wären (Array nad PwideChar)
Ansonsten treten noch einige warungen auf, die einen:
"[DCC Warnung] cassyserial.pas(1332): W1057 Implizite String-Umwandlung von 'AnsiString' zu 'string'"
bei einem AnsiPos(' ',Ansistring), und bei einem Error.crate.

OldGrumpy 13. Mai 2009 14:39

Re: Delphi 5 zu 2009 und Cassy?
 
Da muss man im Einzelfall ggf. etwas tricksen und mit Bytes und expliziten Typecasts arbeiten. Kannst Du mal Deinen aktuellen Stand zusammenpacken und hier im Thread anhängen? Dann schau ich mal rein.

jesaa 16. Mai 2009 10:40

Re: Delphi 5 zu 2009 und Cassy?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo noch mal

Ich hab den ganzen Ordner mit den Dateien mal gepakt und angehangen.
Ich hoffe da ist alles dabei was du brauchst. Es ist nicht ganz aktuell (ich hab noch eine oder 2 Funktionien in die Ansivariante umbenatnt gehabt) aber an den aktuellen Stand komm ich im Moment nicht ran.

Jesaa

jesaa 10. Jun 2009 14:04

Re: Delphi 5 zu 2009 und Cassy?
 
Hallo noch mal
Also ich hab das Problem jetzt soweit reduziert, das ich alles auf ansi umgestellt habe, und nun nur noch an der Funktion CreateFile() scheitere. Laut Dokumentation nimmt diese Funktion nur WideChars, bzw. WideStings, wobei ich mir nicht ganz im klaren bin, ob die Dokumentation mit der anwendung der funktion übereinstimmt.

Die funktion sieht so aus:

Delphi-Quellcode:
CreateFile(PAnsiChar(FDevicePath), GENERIC_READ Or GENERIC_WRITE, 0 (*FILE_SHARE_READ Or FILE_SHARE_WRITE*), Nil, OPEN_EXISTING,
                                                     FILE_ATTRIBUTE_NORMAL Or FILE_FLAG_OVERLAPPED, 0);
währen in der doku Steht:

Delphi-Quellcode:
constructor CreateFile(AOwner: TComponent; ReqFile: string; RespFile: string); overload;
vieleicht hat ja jemand ne idee wir ich die Funktion dazu bekomme alle arbeit in Ansi abzuleisten?

Gruß

Jesaa

[Edit] Hab gerade festgestellt, das es anscheinend 2 versionen von CrateFile gibt. Die die hier verwendet wird steht wohl in "Windows" (auch wenn ich mir nicht ganz klar bin was das zu heisen hat), während die andere Delphieigen zu sein schein.[/Edit]

jesaa 10. Jun 2009 15:02

Re: Delphi 5 zu 2009 und Cassy?
 
:corky: Ich habs :bounce2:
Die lösung ist so Trivial wie Dämlich. Die Ansi Variant von CreatFile ist CrateFileA.
Innerer jubel.
Jedenfalls findet er mein Cassy, und ich bin guter Dinge, das der rest jetzt auch noch funktioniert.


Danke für die Hilfe.


Jesaa

OldGrumpy 14. Jun 2009 17:32

Re: [gelöst] Delphi 5 zu 2009 und Cassy?
 
Hi,

sorry dass ich mich erst jetzt melde, hier gehts momentan drunter und drüber. Ich freu mich dass Du die Lösung gefunden hast :)

andreaschr 11. Sep 2017 14:48

AW: [gelöst] Delphi 5 zu 2009 und Cassy?
 
Hallo jesaa,
ich wollte etwas an einem mit Delphi 6 erstellten Programm ändern, allerdings jetzt mit RAD Studio 10.1 Berlin.
Komponenten installieren und Programm compilieren ging ohne Fehler. Nur wird das Sensor-Cassy nicht gefunden.
Da Du ja Dein Problem mit ANSI Char usw. gelöst hattest: Kannst Du mir bitte Deine unter 2009 funktionierende Version der Komponenten geben?
Vielen Dank im Voraus

Andreas

TiGü 11. Sep 2017 14:53

AW: [gelöst] Delphi 5 zu 2009 und Cassy?
 
Zitat:

Letzte Aktivität: 10. Jun 2009 15:03
Ich glaube, auf diesem Wege wirst du keine Hilfe erhalten.

andreaschr 12. Sep 2017 06:55

AW: [gelöst] Delphi 5 zu 2009 und Cassy?
 
Hallo,
ich hatte gehofft, auf das "gelöst" von jesaa aufbauen zu können. Jetzt habe ich mich selbst an der Konvertierung von Chr und String versucht, habe aber immer noch Fehler darin...
Gruß
Andreas


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:49 Uhr.

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