Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Portierung Delphi 5 zu 10.4 (https://www.delphipraxis.net/206842-portierung-delphi-5-zu-10-4-a.html)

torrix 3. Feb 2021 14:22

Portierung Delphi 5 zu 10.4
 
Guten Tag Zusammen,

hat schonmal jemand einen Leitfaden für die Portierung geschrieben? Ich bin gerade neu an Delphi gekommen und soll ein altes, recht umfangreiches Projekt, aufpeppen. Die Online Recherche hat sich bisher als ehr zäh erwiesen.

Hier schon einmal die eingebundenen Dateien, falls jmd damit direkt etwas anfangen kann.
uses
Forms, Classes, Controls, Menus, ComCtrls, Windows, Dialogs, SysUtils,
UDefinitions, UDeviceConfigurations,
UIselController, UBergerLahrController, UMotorEvent,
UMotorControllerDefinitions, UConfiguration, UTools, UMultimeterController,
UProceed, UProbeOperations, UProbeAnalysis, ComPort, UDatatypeContainer,
extctrls, UFormInitializeRequest, UCalVerFnlTst, FileCtrl, UDBModule, DConsole, UDebugHelper,
StdCtrls, AdvGrid;


Grüße
Torrix

haentschman 3. Feb 2021 14:34

AW: Portierung Delphi 5 zu 10.4
 
Moin...:P

Grundsätzlich 5-10.4:
* Strings sind jetzt Unicode Strings
* ShortString auflösen
* erstmal alle Strings zu AnsiStrings machen
...hier zu ergänzen! :wink:

Projekt:
Zitat:

Forms, Classes, Controls, Menus, ComCtrls, Windows, Dialogs, SysUtils, StdCtrls, AdvGrid; FileCtrl, extctrls, ComPort
...keine Probleme
AdvGrid: neueste Version benutzen
Zitat:

UDefinitions,...alle U*
...sind imho eigene Units des Entwicklers/Firma siehe "Grundsätzlich"

Bernhard Geyer 3. Feb 2021 14:36

AW: Portierung Delphi 5 zu 10.4
 
AdvGrid -> https://www.tmssoftware.com/site/advgrid.asp

Bernhard Geyer 3. Feb 2021 14:37

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

Zitat von haentschman (Beitrag 1482137)
* erstmal alle Strings zu AnsiStrings machen

Würde ich nicht.
Hatte erste einen Fall bei dem man das gemacht hatte.
Statt EINE Stelle wegen Char = 2 Byte anzupassen, musste ich 200 stellen wieder von Ansistring zurück nach String ändern ...

haentschman 3. Feb 2021 14:40

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

erstmal alle Strings zu AnsiStrings machen
...blöd ausgedrückt: Nur die die angemeckert werden oder wo komische Werte rauskommen. :wink:

Uwe Raabe 3. Feb 2021 15:10

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

Zitat von torrix (Beitrag 1482135)
Ich bin gerade neu an Delphi gekommen und soll ein altes, recht umfangreiches Projekt, aufpeppen.

Hmmm! Nur meine Meinung, aber sas ist jetzt nicht unbedingt ein Projekt, dass man einem Delphi-Neuling aufdrücken würde.

torrix 3. Feb 2021 15:29

AW: Portierung Delphi 5 zu 10.4
 
ja moin,
cool, dass es schon Antworten gibt.

Ja Neuling geeignet ist das Projekt nicht besonders. Zumal Delpi5 unter win10 ja nur noch eingeschränkt läuft.
Die Software steuert einen komplexen Prüfstand und eine Datenbank.
Nach den ersten Beiträgen habe ich nicht mehr so viel Respekt vor der Portierung, viel mehr mit den Anpassungen, die am Code vorgenommen werden sollen. :pale: Das Projekt hat über 10k Zeilen und einer der Controller am Prüfstand wird erneuert, dadurch soll die Kommunikation statt über das alte Protokoll auch/mit über den COMPort laufen, über den der Prüfling Kommunizieren kann. Was ich übertragen muss, das weiß ich schon, nur das Wie&Wo bleibt bislang ein Geheimnis.

TurboMagic 3. Feb 2021 17:11

AW: Portierung Delphi 5 zu 10.4
 
Tipp: versuche dir auch mal Unit Testen als Fähigkeit anzueignen.

Beim Delphi ist z. B. DUnit mit dabei. Für alle nicht GUI Units
die du portiert hast soweit möglich zumindest mal ein paar Tests
aufsetzen, dann merkst du schneller wo was kaputt geht falls du nochmal
was an den Units drehen musst.

Evtl. auch mal versuchen das Programm in einzlne "Module" zu zerlegen
und dann diese der Reihe nach portieren. Also das was nichts mit dem
entsprechenden Teil zu tun hat auskommentieren und den Rest dann portieren.
Möglichst mit dem einfachsten Programmteil anfangen um ein Gefühl dafür zu
bekommen. Danach schrittweise weitere Teile dazu nehmen.

Und möglichst mit Versionskontrolle arbeiten, damit du auch mal wieder
zurück kannst, wenn du dich wo verrant haben solltest. Und wenn's nur
ein lokal aufgesetztes VisualSVN + TortoiseSVN ist...

Noch ein Tipp: falls die Datenkommunikation mit Binärdaten arbeitet die
aber in Strings packt das möglichst gleich umstellen auf TBytes oder
TMemoryStream oder so, weil bei Nutzung von Strings mit binären Daten kann
man sich viel Ärger einhandeln!

himitsu 3. Feb 2021 17:20

AW: Portierung Delphi 5 zu 10.4
 
bezüglich Versionskontrolle:
GIT/SVN/HG unterstützt Delphi auch direkt, in der Projektverwaltung und unterm Quellcode die Historie (wenn erkannt, dann wird das genutzt, anstatt dem __history-Ordner)

Und unbedingt als Erstes im FormDesigner mal ins Kontextmenü gucken.
Rechtsklick auf alle deine Forms und ganz unten einen Haken bei Text-DFM.
Delphi hatte früher die DFMs binär gespeichert und seit mindestens Delphi 7 kann es auch als Text,
was für die Änderunganzeige in der Versionskontrolle besser ist.

haentschman 4. Feb 2021 06:37

AW: Portierung Delphi 5 zu 10.4
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Und möglichst mit Versionskontrolle arbeiten
Das Wichtigste überhaupt! :warn:
https://entwickler-ecke.de/topic_Kur..._115462,0.html
Empfehlen würde ich noch ein "Ticketsystem" wo du alles protokolieren kannst. Fehler, ToDo´s, Features. Und vor allem, auch wenn sie es nicht verstehen, die Documentation für die Chef´s..was du gemacht hast. :thumb:
https://www.mantisbt.org/
Zitat:

versuche dir auch mal Unit Testen als Fähigkeit anzueignen.
Löblich, aber ich glaube er hat andere Probleme als das. :zwinker:
Zitat:

Hmmm! Nur meine Meinung, aber sas ist jetzt nicht unbedingt ein Projekt, dass man einem Delphi-Neuling aufdrücken würde.
...auch meine Meinung. Und dann vieleicht noch mit Termin! *grusel* :?

Wie du sehen kannst, gehört noch viel mehr drumherum. :wink:

Ich würde folgende Reihenfolge vorschlagen:
1. Grundlagen Delphi
2. Versionskontrolle
3. Ticketsysten oder ähnliches
4. Dem Chef Geld aus dem Rücken leiern für evt. Kaufkomponenten
5. Plan machen (Zeitleiste)
6. Eine Unit nach der anderen umstellen
7. Tests, Tests, Tests

Wichtig: Die DP als Link in Lesezeichen/Favorit anlegen! :P

freimatz 6. Feb 2021 20:40

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

Zitat von torrix (Beitrag 1482143)
ja moin,
cool, dass es schon Antworten gibt.

Ja Neuling geeignet ist das Projekt nicht besonders. Zumal Delpi5 unter win10 ja nur noch eingeschränkt läuft.
Die Software steuert einen komplexen Prüfstand und eine Datenbank.
Nach den ersten Beiträgen habe ich nicht mehr so viel Respekt vor der Portierung, viel mehr mit den Anpassungen, die am Code vorgenommen werden sollen. :pale: Das Projekt hat über 10k Zeilen und einer der Controller am Prüfstand wird erneuert, dadurch soll die Kommunikation statt über das alte Protokoll auch/mit über den COMPort laufen, über den der Prüfling Kommunizieren kann. Was ich übertragen muss, das weiß ich schon, nur das Wie&Wo bleibt bislang ein Geheimnis.

Ach, es geht um eine neue Funktion und die Umstellung macht man halt noch so nebenbei? Der Chef meint das macht der Neue. Sarkasmus off.
10k sind nicht sonderlich viel. Mein eigenes Projekt hat so 700k, in der Firma haben wie 1-2 Millionen.
Ich würde sagen erst mal umstellen und dann erst an neue Funktion erst nur denken.

himitsu 6. Feb 2021 20:53

AW: Portierung Delphi 5 zu 10.4
 
Ja, damals D7 zu XE ... nach 'nem halben Jahr wurden noch Fehler gefunden
Und selbst diesmal nach über 5 Jahren fand ich noch einen Doppelfehler von damals. (zwei Convertierungsfehler, die sich gegenseitig aufhoben)

350 Stunden gingen grade nun alleine für XE zu 10.4 drauf (die Anfänge in 10.2 und 10.3 und der Upgrade aller Fremdkomponenten nicht eingerechnet)
Dabei waren es am Quellcode selber diesmal fast keine Umstellungen (außer dass viel Altcode und eine alte Fremdkomponente diesmal mit rausflogen)
Aber es wird auch gleich die Chance genutzt paar Dinge gleich mal mit zu überarbeiten, wenn man schonmal dran ist.

torrix 16. Feb 2021 09:22

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

Zitat von haentschman (Beitrag 1482178)
6. Eine Unit nach der anderen umstellen
7. Tests, Tests, Tests

Wie soll das gehen? Öffne ich das Projekt, gibt es beliebig viele PopUp Fehler und wenn ich eine Unit öffne, kann ich sie nicht Compilieren, weil der Knopf ausgegraut ist.

Einen Leitfaden oder Tipps vom Hersteller des Compilers konnte ich dazu auch noch nicht finden. So macht es jedenfalls nicht sehr viel Sinn hier rum zu probieren.

haentschman 16. Feb 2021 09:27

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

gibt es beliebig viele PopUp Fehler
...hänge mal die Screenshots, oder Texte, der Fehler an. (max 10)
Zitat:

und wenn ich eine Unit öffne, kann ich sie nicht Compilieren, weil der Knopf ausgegraut ist
Eine Unit kann man auch nicht compilieren. Dazu gehört immer ein Projekt. (DPR / DPROJ)

torrix 16. Feb 2021 09:36

AW: Portierung Delphi 5 zu 10.4
 
ob es so toll ist, das projekt erst zu portieren und dann zu programmieren hmm aufräumen wäre vorher gut, denn dann fällt mindestens ein Packet bei "uses" weg. Über das Teil werden aber auch Daten gesendet.
Ich könnte versuchen es im alten Compiler heraus zu komentieren und dann das Package bei "uses" raus löschen und dann portieren. Das müsste doch arbeit sparen? :gruebel:

Gerade läuft das Update von 10.4 auf 10.4.1
Die Fehler kommen von fehlenden "uses" Daten.

haentschman 16. Feb 2021 09:43

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

Die Fehler kommen von fehlenden "uses" Daten.
Der Sinn hinter dieser Frage war: Sind alle benötigten Komponenten, die die alte Version hatte, installiert? Vorher brauchst du nicht portieren.

torrix 16. Feb 2021 10:14

AW: Portierung Delphi 5 zu 10.4
 
Nein sind sie nicht. Bricht der Compiler nach dem ersten Fehler ab oder zeit er mir alle an?

Das PBEditPack fehlt (mindestens).
...is a collection of 7 FREEWARE Edit-components for Delphi: PBBinHexEdit, PBDBEdit, PBEdit, PBMaskEdit, PBNumEdit, PBSuperSpin and PBSpinEdit.
Ich probiere jetzt mal, die version 4.0 auf eigene Faust zu installieren. Das (c) ist allerdings von 2001 und die Url in der Readme geht auch nicht.

haentschman 16. Feb 2021 10:28

AW: Portierung Delphi 5 zu 10.4
 
Liste mal die auf, die in den .PAS so:
Zitat:

PBBinHexEdit, PBEdit, PBEditEx, PBMaskEdit, PBNumEdit, PBSuperSpin and PBSpinEdit
heißen...

Die mußt du nur mit den Delphi eigenen austauschen.

torrix 16. Feb 2021 10:40

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

Zitat von haentschman (Beitrag 1483104)
Die mußt du nur mit den Delphi eigenen austauschen.

Ja dafür müsste man doch aber Wissen, was die Funktionen genau machen und dann auch noch wissen, welche funktion bei 10.4 das erledigen kann. Da ich beide Programme nicht kenne und bisher auch keine Quellen für die Informationen finde, die ich suche, trette ich bloß auf der Stelle rum.

Klaus01 16. Feb 2021 11:05

AW: Portierung Delphi 5 zu 10.4
 
die PB Sachen gibt es hier (mit Source)
allerdings nur bis D7 - sollten also kein UniCode können.

Grüße
Klaus

haentschman 16. Feb 2021 11:09

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

was die Funktionen genau machen
Das sind keine Funktionen sondern Komponenten. Quasi die Eingabefelder z.B.

TPBEdit = TEdit

TPDEdit hat damals Features zum normalen TEdit hinzubekommen. Inzwischen kann das TEdit das auch. :wink:

Nimm es nicht persönlich...das ist eine Nummer zu hoch für dich. :? Dir fehlen echt die Grundlagen. :?

IBExpert 16. Feb 2021 13:19

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

Zitat von haentschman (Beitrag 1483108)
Nimm es nicht persönlich...das ist eine Nummer zu hoch für dich. :? Dir fehlen echt die Grundlagen. :?

wollte ich auch schon so ähnlich schreiben, da stimme ich nämlich voll mit überein.

Das Problem so alter Projekte aus der Delphi5 Zeit ist nicht mal nur das ganze compilierbar zu machen, das bekommt man ggf über eine vertretbare Zeit hin, aber wenn es kompiliert ist, dann beginnen die nächsten meistens viel schlimmeren Probleme, nämlich die exe startet nur mit unerklärlichen Access Violations, oder nach dem Start kommen die irgendwann oder die Bedienung wie das mal gedacht war, funktioniert nicht mehr so wie man es gewöhnt war usw.

Ich glaub die meisten Delphi Profis unter uns hier würden so ein Projekt nur nach Aufwand gegen Stundenlohn ohne limit der Stundenzahl anbieten, wenn man das seriös vereinbaren will und viele von uns kennen da schon reichlich fallstricke aus den Portierungen der letzten 26 Jahre Delphi n zu delphi n+1 oder ähnlich.

Wenn du aber selber schreibst, das du neu in Delphi bist, dann würde ich dir empfehlen erst mal ein neues Projekt aufzusetzen und die teile von dem existierenden Quellcode, der irgendwas geistreiches macht, in das neue Projekt auf ganz andere Komponenten aufzubauen, das wird garantiert wesentlich schneller zu ziel führen als versuchen den ganzen GUI kram aus dem letzten Jahrtausend wieder zum leben zu erwecken

Versuch erst mal die teile zu extrahieren, die irgendwas an kommunikation machen, bau dir dafür einen eigene Unit ohne den ganzen gui kram und danach fang mit einer simple Konsolenapp oder ganz banal memo auf dem screen und ein paar button, um den kram zu testen ob der das macht was der machen soll.

Wenn der teil klar ist und du das am laufen hast, dann beginne mit der gui, eine andere Reihenfolge wird dich ggf noch jahre beschäftigen können ohne das ein ziel sichtbar ist.

Ein projekt mit "über 10k Zeilen" ist dabei ja noch fast übersichtlich ...

IBExpert 16. Feb 2021 13:24

AW: Portierung Delphi 5 zu 10.4
 
und bzgl Delphi5 läuft nicht in Windows 10? gibt es da konkrete Gründe, die ich wissen sollte, warum die von mir benutzte 32bit Windows 10 VM mit Delphi5, auf der ich mit IBExpert Sourcen arbeite, nicht laufen sollte?

Meine vm weiss davon nämlich nichts und funktioniert damit sehr gut, jedenfalls bei all dem was ich das so mache...

(die installation per installer habe ich da nie versucht, sondern von existierender win7 vm alle pfade kopiert und registry kram exportiert/importiert und schon geht auch das, bei ein paar fehlermeldungen aus dlls hab ich die noch explizit per regsvr32 registrieren müssen, aber dann geht auch das bei mir)

torrix 16. Feb 2021 14:12

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

Zitat von IBExpert (Beitrag 1483114)
Zitat:

Zitat von haentschman (Beitrag 1483108)
Nimm es nicht persönlich...das ist eine Nummer zu hoch für dich. :? Dir fehlen echt die Grundlagen. :?

wollte ich auch schon so ähnlich schreiben, da stimme ich nämlich voll mit überein.

was soll ich da persönlich nehmen? ich hätte mich selbst niemals für das projekt empfohlen.

Zitat:

und bzgl Delphi5 läuft nicht in Windows 10? gibt es da konkrete Gründe, die ich wissen sollte, warum die von mir benutzte 32bit Windows 10 VM mit Delphi5, auf der ich mit IBExpert Sourcen arbeite, nicht laufen sollte?
Die Hilfe Funktion funktioniert nicht mehr. Da wo man sich schätzungsweise die Syndax und die Funktionen des Befehls anschauen kann.


Ich probiere mir jetzt Unterstützung zu organisieren. Sonst sitze ich hier noch bis zur Rente dran. Angebote kann man mir ggf. zukommen lassen.

Rolf Frei 16. Feb 2021 14:32

AW: Portierung Delphi 5 zu 10.4
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Die Hilfe Funktion funktioniert nicht mehr. Da wo man sich schätzungsweise die Syndax und die Funktionen des Befehls anschauen kann.
Zumindest hierfür gibt es eine Lösung. Nutze das angehängte Win32 Setup. Kopieren den Inhalt der beigefügten ZIP Datei in ein lokales Verzeichnis und starte dann das beigefügte install.cmd als Administrator. Danach ist die alte Win32 Hilfe wieder nutzbar unter Win 10 und somit auch die D5 Hilfe. Das musst du eventuell nach jedem grossen Win 10 Update erneut machen.

torrix 16. Feb 2021 14:56

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

Zitat von Rolf Frei (Beitrag 1483118)
Zitat:

Die Hilfe Funktion funktioniert nicht mehr. Da wo man sich schätzungsweise die Syndax und die Funktionen des Befehls anschauen kann.
Zumindest hierfür gibt es eine Lösung. Nutze das angehängte Win32 Setup. Kopieren den Inhalt der beigefügten ZIP Datei in ein lokales Verzeichnis und starte dann das beigefügte install.cmd als Administrator. Danach ist die alte Win32 Hilfe wieder nutzbar unter Win 10 und somit auch die D5 Hilfe. Das musst du eventuell nach jedem grossen Win 10 Update erneut machen.

super Sache, das funktioniert schonmal.

IBExpert 16. Feb 2021 16:38

AW: Portierung Delphi 5 zu 10.4
 
das mit der Hilfe ist mir noch gar nicht bewusst gewesen, ich hab die glaub ich in den letzten
10 Jahren eh nicht mehr benutzt

wenn ich mir der Source der Komponente nicht weiterkomme, war google bisher eh schon meine erste wahl

(und das winhlp32 aus dem tip hatte ich gerade auch mal kurz installiert und jetzt bekomm ich
jedenfalls eine sinnvolle fehlermeldung, das die verbundene delphi5.hlp bei mir eh nicht
vorhanden ist, hatte ich wohl schon lange nicht mehr mitkopiert, fehlt mir aber auch nicht ...)

und sei dir ganz sicher, um irgendwas persönlich nehmen, geht es bei uns hier ganz sicher nicht

Wenn mal vor 15 Jahren jemand gefragt hätte, ob es sinnvoll ist, Raketen zu entwickeln, die auch wieder
landen können und danach wieder benutzt werden können, hätte sicherlich jeder, der sich damit ein wenig
auskennt gesagt, ne, lass mal. Es ist nicht nur da um so beeindruckender, das es demjenigen egal war
und der einfach weiter gemacht hat.

Die Frage bei TEdit und TPBEdit "was die Funktionen genau machen" ist in der üblichen Nameswelt von
Delphi Programmierern dann ein Hinweis gewesen, der auf sehr begrenzte Basiskenntnisse hindeutet
und daher unser Kommentar.

Ich hab auch in großen Konzernen Leute kennengelernt, die dort als Programmierer beschäftigt waren,
das aber dummerweise überhaupt nichts mit deren Talent zu tun hatte, programmieren gehörte auf jeden
Fall nicht zu den Talenten, auch nicht wenn man diverse Woche Fortbildungen besucht hatte.

Deine Hartnäckigkeit ist aber schon positiv zu sehen, wer weiss, vielleicht hast du den kram in
einer paar wochen komplett fertig konvertiert und deutlich verbessert. Abe rder Tip,
das Projekt erst mal aufzuteilen und nicht nur zu laufen zu bringen, um dann da was dranzufrickeln
würde ich noch mal wiederholen, kannst ja auch gerne deinen vorgesetzten dazu mal befragen,
oft wurde so was nur nicht gemacht, weil sich kein schwein an den uralten code rangetraut hat und
nur weil du nun nicht rechtzeitig nein gesagt hast, heisst das ja nicht, das die konvertierung
nicht gleich eine verbesserte version ergeben kann.

Alter tip übrigens noch von einem alten sack: wenn du irgendeine Zeile in seiner Funktion
nicht zuordnen kannst, einfach mal auskommentieren und kleiner kommentar dazu schreiben
was dein momentanes verständnis von dieser zeile quellcode ist und was es wohl machen sollte.

du wirst in fast allen projekten feststellen, die über so viele jahre entstanden sidn, das mindestens
20-40 % dieser zeilen gar keine wichtige Funktion hatten und auskommentiert bleiben können
oder irgendwann kommt dir die Erkenntnis, das es zB irgendein event oder property einer uralten
Komponente war, die in der neuen vielleicht anders heisst oder gar nicht existiert. Auf dem
Weg wirst du aber deutlich schnelle rirgendwas kompilierbares haben und dann den kram nach
und nach wieder lauffähig zu haben, geht meistens einfacher

und wenn du zB TPBEdit global im ganzen Projekt durch TEdit ersetzen willst, es gab früher ein
sehr hilfreiches Tool namens greplace mit dem das in dfm und pas recht einfach ging. falls
das dann auch nach deiner änderung weiter in delphi5 comilierbar ist, spart das auch schon
mal zeit

TurboMagic 16. Feb 2021 19:52

AW: Portierung Delphi 5 zu 10.4
 
Noch ein Tipp: Ctrl-Shift-T ermöglicht zumindest in neueren Versionen einen ToDo Kommentar hinzuzufügen. Die kann man dann in einer ToDo Liste einsehen und somit von normalen Kommentaren unterscheiden.

haentschman 17. Feb 2021 05:15

AW: Portierung Delphi 5 zu 10.4
 
Moin...:P
Zitat:

Die Hilfe Funktion funktioniert nicht mehr.
...gibt es etwas von der Delphi Praxis. :wink:
https://www.delphipraxis.net/dp_reference.php
Zitat:

Die Delphi-Referenz als Suche ("OpenSearch") in den Browser integrieren
:thumb:
Beispiel: https://www.delphipraxis.net/dp_refe...ry=tstringlist
Zitat:

ich hab die glaub ich in den letzten 10 Jahren eh nicht mehr benutzt
+1 :wink:

torrix 17. Feb 2021 08:56

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

Zitat von IBExpert (Beitrag 1483127)

Ich hab auch in großen Konzernen Leute kennengelernt, die dort als Programmierer beschäftigt waren,
das aber dummerweise überhaupt nichts mit deren Talent zu tun hatte, programmieren gehörte auf jeden
Fall nicht zu den Talenten, auch nicht wenn man diverse Woche Fortbildungen besucht hatte.

...

Deine Hartnäckigkeit ist aber schon positiv zu sehen, wer weiss, vielleicht hast du den kram in
einer paar wochen komplett fertig konvertiert und deutlich verbessert. Abe rder Tip,
das Projekt erst mal aufzuteilen und nicht nur zu laufen zu bringen, um dann da was dranzufrickeln
würde ich noch mal wiederholen, kannst ja auch gerne deinen vorgesetzten dazu mal befragen,
oft wurde so was nur nicht gemacht, weil sich kein schwein an den uralten code rangetraut hat und
nur weil du nun nicht rechtzeitig nein gesagt hast, heisst das ja nicht, das die konvertierung
nicht gleich eine verbesserte version ergeben kann.
...

und wenn du zB TPBEdit global im ganzen Projekt durch TEdit ersetzen willst, es gab früher ein
sehr hilfreiches Tool namens greplace mit dem das in dfm und pas recht einfach ging. falls
das dann auch nach deiner änderung weiter in delphi5 comilierbar ist, spart das auch schon
mal zeit

zu 1) ich bin hier nicht als programmierer angestellt und es ist auch sicher nicht mein talent. und einem konzern gehört die firma auch an :lol:

zu 2) es gibt 18 selbstgeschriebene units mit gui und selbstgeschriebene 20 ohne.

zu 3) nur mit dem nacken Namen findet man das tool nicht so leicht. erinnerst du eine version oder den hersteller davon? die suchengine geht immer von "replace" aus

TiGü 17. Feb 2021 09:26

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

Zitat von torrix (Beitrag 1483164)
zu 1) ich bin hier nicht als programmierer angestellt und es ist auch sicher nicht mein talent. und einem konzern gehört die firma auch an :lol:

Sag deinen Vorgesetzten, dass ist vertane Lebens- und Arbeitszeit und die sollen sich einen Freelancer suchen, der das Tool umstellt.
Dafür gibt es hier auch Jobbörse.

Aber warum werde ich das Gefühl nicht los, dass hier irgendein 30-20 Jahre altes Tool weiter-/wiederbelebt werden soll, wofür es gewiss schon andere und bessere Lösungen gibt.
Kannst du uns etwas erzählen, wofür und was das Programm macht/machen soll.

Union 17. Feb 2021 11:10

AW: Portierung Delphi 5 zu 10.4
 
Um Komponenten u.ä. zu ersetzen, wird seit knapp 10 Jahren reFind mitgeliefert.

Z.b.
Code:
refind *.pas *.dfm /I /W "/P:T[A-Za-z]+Edit" /R:TEdit

IBExpert 17. Feb 2021 12:14

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

Zitat von torrix (Beitrag 1483164)
zu 3) nur mit dem nacken Namen findet man das tool nicht so leicht. erinnerst du eine version oder den hersteller davon? die suchengine geht immer von "replace" aus

hier ist das downloadbar, was ich meine
http://delphi.icm.edu.pl/newl/tools/flib_008.htm
bzw
http://delphi.icm.edu.pl/ftp/tools/greplace.zip

himitsu 17. Feb 2021 13:02

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

Zitat von Union (Beitrag 1483179)
Code:
refind *.pas *.dfm /I /W "/P:T[A-Za-z]+Edit" /R:TEdit

ACHTUNG: Aus einem TDBEdit oder einem TRichEdit ein TEdit zu machen, kann auch nicht die Lösung sein. :angle2:

Außerdem, waren im Delphi 5 die DFMs noch binär.
Darin mit "Texten" zu rumzufummeln, wird auch nicht gut gehn.


Man könnte vorher die BinärDFMs in TextDFMs konvertieren, auch ohne die Forms in Delphi öffnen zu müssen.

torrix 17. Feb 2021 13:06

AW: Portierung Delphi 5 zu 10.4
 
dank euch allen ersteinmal.

das programm wurde 2004 geschreiben und 05 sowie 07 wurden fehler beseitig und die person(en) hat die firma verlassen. wenn dieses programm auf keinem rechner mehr funktioniren würde, wäre über die hälfte des umsatzes weg :wall:

eben in einer kleineren runde waren wir auch bei dem stand angekommen, dass wir besser erst die software anpassen und dann von einem profi alle unsere delhpi5 programme updaten lassen.
oder vereinfach die neue version massiv das arbeiten an der modifikation?


mal sehen, was beim meeting der hohen tiere heraus kommt.

Commander Tom 17. Feb 2021 13:49

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

Zitat von torrix (Beitrag 1483190)
das programm wurde 2004 geschreiben und 05 sowie 07 wurden fehler beseitig und die person(en) hat die firma verlassen. wenn dieses programm auf keinem rechner mehr funktionieren würde, wäre über die hälfte des umsatzes weg :wall:

Ist auch nicht nachzuvollziehen, ein Programm, was die Hälfte des Umsatzes generiert, nur einen Mitarbeiter bearbeiten zu lassen. Was wäre denn gewesen, wenn der nun ein Jahr ins Koma gefallen wäre? Grundsätzlich ist es besser, das einem kleinen Team zuzuweisen, so dass es noch Fallback gibt, falls mal was passiert. Außerdem hättet ihr jede Delphi-Version mitgehen sollen, um immer auf dem Laufenden zu bleiben - bei dem, was das Programm an Umsatz generiert, ist eine Delphi-Version vernachlässigbar, mit Subscription sowie kein Problem mehr.

Ich persönlich würde mir erst einmal anhand der Units und der Funktionen einen Überblick über das Programm verschaffen und dies dann sinnvoll aufteilen, indem ich Funktion für Funktion portiere und neu aufsetze. Am Ende kommt dann die GUI dran, dort ist es meistens nur simples Copy and Paste, wenn fehlende Komponenten durch Delphi-eigene ersetzt werden sollen.

himitsu 17. Feb 2021 14:24

AW: Portierung Delphi 5 zu 10.4
 
Wenn man Delphi kauft, dann kann/sollte man sich auch gleich die Lizenzen der Vorgängerversionen mit abholen.
https://www.embarcadero.com/de/produ...vious-versions

Delphi 7, 2007, 2009 und alles Neuere ist da verfügtbar.



7/2007 sind noch ANSI und somit könnte man damit auch erstmal anfangen
und es stückchenweise hochziehen. (jeweils mit einer Delphiversion wo es größere Änderungen gab, anstatt ALLES auf Einmal)
5 > 7 > 2007 (ab hier die neue IDE) > 2009 (Unicode ab hier) > XE > 10.x

Bzw. die ganz dringenden Änderungen erstmal in D7 oder 2007 machen, da D7 noch mit D5 halbwegs kompatibel ist/war.

mytbo 17. Feb 2021 15:20

AW: Portierung Delphi 5 zu 10.4
 
Vor einigen Jahren habe ich ein großes Projekt von D5, mit dem Zwischenschritt D7, auf D2007 portiert. Die Portierung von D5 auf D7 war mit ein wenig (sehr überschaubar) Arbeit verbunden. Der Schritt von D7 auf D2007 ging fast von alleine.

Das Programm ist heute noch auf dem Stand D2007 und wird regelmäßig mit Updates versorgt. D2007 mit "December 2007 Update" und dem "May08 Help Update", dazu die freien IDE Erweiterungen "GExperts Experimental Version 1.3.8.50", "IDE Fix Pack 2007 4.4 Windows 10 Edition" und "DDevExtensions 2.4.1" läuft sehr stabil und schnell. Von Seite der IDE lässt es sich damit schneller entwickeln, als mit aktuellen Versionen. Wenn ich nach Wartungsarbeiten wieder mit aktuellen Versionen arbeiten muss, fäll mir die langsame Reaktion der neuen IDEs besonders negativ auf. Hoffentlich wird Delphi 10.5 diesbezüglich deutlich besser. Mein Tipp, erst einmal auf D2007 hochziehen und schauen, ob es ausreicht.

Bis bald...
Thomas

TurboMagic 17. Feb 2021 17:33

AW: Portierung Delphi 5 zu 10.4
 
Zitat:

Zitat von IBExpert (Beitrag 1483183)
Zitat:

Zitat von torrix (Beitrag 1483164)
zu 3) nur mit dem nacken Namen findet man das tool nicht so leicht. erinnerst du eine version oder den hersteller davon? die suchengine geht immer von "replace" aus

hier ist das downloadbar, was ich meine
http://delphi.icm.edu.pl/newl/tools/flib_008.htm
bzw
http://delphi.icm.edu.pl/ftp/tools/greplace.zip

Habe mir die Links nicht näher angeschaut, aber kann das im Delphi Bin Ordner als Kommandozeilen Tool vorhandene grep.exe das evtl. auch schon?

TurboMagic 17. Feb 2021 17:41

AW: Portierung Delphi 5 zu 10.4
 
Hallo,

noch was: ich hoffe, du hast bei Embarcadero auf der Webseite schon das kostenlose
Object Pascal Handbook vom Produktmanager Marco Cantu gesehen?

Man kann es hier kostenlos als PDF anfordern:
http://forms.embarcadero.com/DownloadMarcoCantueBook

Evtl. hilft dir das etwas bei der Syntax etc. und beim Finden/Benutzen
allgemeiner Bibliotheken der mitgelieferten Laufzeitumgebung.

Noch eine Idee: versuche mal aufzuzeichnen, welche Unit deines Projektes welche anderen
benutzt umd rauszufinden, ob es Units gibt die man "solo" in ein leeres Projekt extrahieren
kann und die man dort dann auf einen compilier und nutzbaren Stand bringen kann.
Und am besten alles was dir auffällt, dass getan werden sollte, in eine Liste schreiben,
damit man's nicht vergisst. Kann auch eine Excel Liste sein die dann noch eine Status Spalte
bekommt.

Wenn du das Projekt von D5 auf D10.4 umstellst musst du v.a. dran denken, dass alle Strings
jetzt nicht mehr Ansi (= 1 Byte pro Zeichen) sondern Unicode (= mind. 2 Byte pro Zeichen) sind.
Je nach dem was mit Strings im Programm gemacht wurde ist das problematisch oder eher problemnfrei.

Grüße
TurboMagic


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:42 Uhr.
Seite 1 von 2  1 2      

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