IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi Discussion :

Présentation d'un outil de conversion Delphi VCL vers FMX


Sujet :

Delphi

  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    autre
    Inscrit en
    Avril 2023
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Avril 2023
    Messages : 6
    Par défaut Présentation d'un outil de conversion Delphi VCL vers FMX
    Bonjour,

    J'ai découvert récemment un outil d'aide à la conversion d'applications Delphi VCL vers FMX qui me semble assez prometteur et je souhaiterais en faire profiter les amateurs qui comme moi
    seraient tentés de passer de VCL à FMX mais qui sont un peu déroutés devant l'ampleur de la tâche, sa complexité et finalement le peu d'information officielle sur le passage
    de VCL à FMX.
    J'ai une application de 19 fiches et 70 unités n'utilisant que des composants et contrôles Delphi (pas de bases de données) et utilisant aussi les messages Windows (WM_) que
    j'ai testée dans ce convertisseur. J'ai pu ouvrir dans l'IDE Delphi (CE 12.1) la nouvelle application FMX générée : unités et fiches FMX (la plupart en ignorant les
    avertissements portants sur des propriétés non prises en compte par FMX, ce n'est pas une baguette magique). Bien entendu, la nouvelle application n'est pas compilable en l'état
    et il reste encore beaucoup à faire manuellement. Mais là aussi ce convertisseur est d'une grande aide car il fournit (au format texte et html) un tableau synthétique du travail
    accompli (nombre de fichiers traités et convertis, nombre de fichiers à réviser particulièrement, nombre d'erreurs bloquantes, nombre d'éléments à réviser manuellement et le
    nombre d'avertissements) et un compte rendu extrêmement détaillé des problèmes qu'il a rencontrés lors de son exécution (nom de l'unité concernée, type de problèmes et numéro de
    ligne dans l'unité).
    Pour moi, le plus grand mérite de ce programme est de fournir une base solide de départ et de permettre de se faire une idée assez précise du travail qu'il reste à faire pour
    passer d'une application VCL valide à une version FMX valide.
    L'application s'appelle VCL2FMXConverter (Version 4.1.8), elle est gratuite et open source (Apache License, Version 2.0 ("Apache-2.0")); il suffit d'ouvrir le projet
    dans l'IDE Delphi (j'ai utilisé la version CE 12.1) puis de compiler (pas besoin d'installer des composants tiers). L'application est disponible sur le site
    "echurchsites.wixsite.com/vcltofmx". Tout est en anglais.
    Merci de m'avoir lu.
    Thierry

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 920
    Billets dans le blog
    66
    Par défaut
    Merci, je vais essayer, j'ai bien quelques projets qui doivent trainer sur mes disques bien sûr avec base de données, j'ai hâte de voir ce que cela peut donner niveau LiveBindings
    Toutefois, j'ai un doute car Firemonkey a quand même des trucs bien pratiques dont la possibilités qu'un composant soit parent d'autres (ne serait-ce que les Layout)
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes), D13 (Florence)
    SGBD : Firebird 2.5, 3, 5 et SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  3. #3
    Nouveau candidat au Club
    Homme Profil pro
    autre
    Inscrit en
    Avril 2023
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Avril 2023
    Messages : 6
    Par défaut
    Bonjour,
    Je ne peux rien vous en dire car mon application ne contient aucun LiveBinding. Mais l'auteur du programme sera sans doute ravi d'avoir un retour sur ce sujet délicat. Moi, je
    découvre FMX...
    Bonne journée.

  4. #4
    Membre Expert
    Avatar de Charly910
    Homme Profil pro
    Ingénieur TP
    Inscrit en
    Décembre 2006
    Messages
    2 609
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur TP
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 609
    Par défaut
    Bonjour,
    merci DLTR_PM pour le lien. L'application compile bien sous D12 CE. J'ai hâte de l'essayer sur mes mini projets.

    A+
    Charly

  5. #5
    Nouveau candidat au Club
    Homme Profil pro
    autre
    Inscrit en
    Avril 2023
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Avril 2023
    Messages : 6
    Par défaut
    Bonjour,
    N'hésitez pas à contactez l'auteur, il est disponible et très réactif.
    Bonne migration vers FMX.

  6. #6
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 920
    Billets dans le blog
    66
    Par défaut
    Je me demande quand même comment les programmes MDI vont être "migrés" !
    MDI n'existe pas en Firemonkey et la partie menu fenêtres risque d'être délicate.
    Perso je m'en suis sorti en utilisant du pseudo docking une forme pouvant être enfant d'un TLayout (un truc moins sophistiqué que les composants d'Andrea Magni TFrameStand et TFormStand )
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes), D13 (Florence)
    SGBD : Firebird 2.5, 3, 5 et SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  7. #7
    Nouveau candidat au Club
    Homme Profil pro
    autre
    Inscrit en
    Avril 2023
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Avril 2023
    Messages : 6
    Par défaut
    Bonjour,
    Je dois dire que je ne m'en suis pas préoccupé car mon application est entièrement en SDI mais gérée en MDI (avec une grosse utilisation de messages Windows). Cela constitue d'ailleurs un point assez délicat pour le passage vers FMX.
    Il me semble avoir lu, sur Developpez, quelque chose sur l'utilisation de TLayout pour gérer les fenêtres sous FMX. Je vous remercie pour le lien, peut-être que cela pourra m'aider.

  8. #8
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 920
    Billets dans le blog
    66
    Par défaut
    Citation Envoyé par DLTR_PM Voir le message
    Il me semble avoir lu, sur Developpez, quelque chose sur l'utilisation de TLayout pour gérer les fenêtres sous FMX.
    Je pense que c'est peut-être mon article https://serge-girard.developpez.com/.../Docking/#LIII
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes), D13 (Florence)
    SGBD : Firebird 2.5, 3, 5 et SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  9. #9
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 920
    Billets dans le blog
    66
    Par défaut
    J'ai fait un essai avec une application D3, mauvaise nouvelle, l'outil de conversion ne fonctionne pas (les formats de fichiers ne sont pas pris en charge)
    Quelqu'un a déjà essayé avec du D7, je pose la question avant que je change de dique externe pour en trouver ?
    Je sais que j'ai des D2010 quelque-part sur le disque en cours donc je vais faire une autre tentative
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes), D13 (Florence)
    SGBD : Firebird 2.5, 3, 5 et SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  10. #10
    Nouveau candidat au Club
    Homme Profil pro
    autre
    Inscrit en
    Avril 2023
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Avril 2023
    Messages : 6
    Par défaut
    Bonjour,
    Citation Envoyé par SergioMaster Voir le message
    J'ai fait un essai avec une application D3, mauvaise nouvelle, l'outil de conversion ne fonctionne pas (les formats de fichiers ne sont pas pris en charge)
    De quels formats de fichier s'agit-il? Celui des fiches (.dfm)? Vous pouvez contacter l'auteur (en anglais), il devrait vous répondre rapidement.

  11. #11
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 920
    Billets dans le blog
    66
    Par défaut
    Je ne pense pas que cet outil soit fait pour migrer des applications VCL "legacy".
    En fait il faudrait dans ce cas une migration en amont passer de version vcl anciennes en version récente avant de se lancer dans une conversion VCL vers FMX.
    Travail que j'ai déjà pu entreprendre pour certaines de mes applications avant de prendre ma retraite :
    1. Migrer vers une version récente de Delphi (pour D3 en passant par D7 avant la version finale)
    2. Passer des connecteurs de base de données (BDE,IBx,ZeosDBO etc..) à Firedac (en optimisant les requêtes et utilisant les spécificités Firedac comme les macros si besoin)
    3. Eliminer le maximum de composants tiers pour les remplacer par des natifs
    4. Tester la version VCL



    En conséquence cet outil ne m'apporte rien de nouveau sachant que, pour la partie interface utilisateur FMX j'exploite au maximum ses spécificités simples comme le TLayout à la place de TPanel mais aussi plus complexes comme le TListview (custom apparence) souvent en lieu et place de grilles et en ajoutant une fiche supplémentaire pour ce qui est des mises à jour de données
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes), D13 (Florence)
    SGBD : Firebird 2.5, 3, 5 et SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  12. #12
    Membre confirmé

    Profil pro
    senior scientist
    Inscrit en
    Mai 2003
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : senior scientist

    Informations forums :
    Inscription : Mai 2003
    Messages : 97
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    En conséquence cet outil ne m'apporte rien de nouveau
    Bonjour,
    C'est peut-être un jugement un peu brutal
    Au delà de l'UI, FMX apporte certaines améliorations de fond par rapport à VCL (par exemple un meilleur accès, je crois, au pixel d'une image pour du traitement d'image), sans compter la compatibilité multi-plateforme. C'est pratique de disposer d'un outil automatique de transformation dans de tels cas, où la transformation elle-même n'est pas l'essentiel.
    Je n'ai pas encore eu le loisir de tester l'outil à ce point de vue, mais je compte le faire dès que possible.
    Merci à son auteur.

  13. #13
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 920
    Billets dans le blog
    66
    Par défaut
    Citation Envoyé par _alx_ Voir le message
    C'est peut-être un jugement un peu brutal
    Effectivement mais cela fait désormais plusieurs années que je n'utilise plus que FMX (à tel point qu'écrire un programme VCL me devient difficile).
    L'outil est, peut-être interessant quand on a des programmes VCL récents mais pour une migration de vieux programmes de mon point vue, l'outil n'est pas adapté.
    S'il faut d'abord passer par les étapes que j'ai indiquées autant reprendre l'UI "à la main"
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes), D13 (Florence)
    SGBD : Firebird 2.5, 3, 5 et SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

Discussions similaires

  1. Problème de connexion Delphi VCL vers mon serveur de bdd
    Par tleboukaka dans le forum Bases de données
    Réponses: 2
    Dernier message: 19/12/2016, 08h00
  2. Réponses: 9
    Dernier message: 01/09/2010, 20h56
  3. Réponses: 1
    Dernier message: 18/08/2009, 20h07
  4. [Kylix] Conversion Delphi 2 vers C++
    Par ROYER dans le forum EDI
    Réponses: 6
    Dernier message: 22/10/2006, 22h11
  5. Conversion Delphi 2 vers Delphi 2005
    Par ROYER dans le forum Bases de données
    Réponses: 10
    Dernier message: 25/11/2005, 18h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo