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

Langage Delphi Discussion :

Intégrer des glyph dans une ressource jointe au EXE


Sujet :

Langage Delphi

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 102
    Points : 87
    Points
    87
    Par défaut Intégrer des glyph dans une ressource jointe au EXE
    Bonjour à tous

    je souhaite améliorer le look de certains de mes boutons ( TSpeedButton ) en y mettant un glyph ( dessin = image BMP ou PNG ).

    mais je souhaite fournir ces glyph dans un fichier indépendant, à coté du EXE.
    ( pour des raisons de déploiement...)

    et dans mon code : si ( fichier Resource existe ) alors lire et changer les glyph
    sinon mettre un Caption texte.

    =============

    Question 1 : Quel type de fichier ressource utiliser pour y intégrer les glyph ?
    Fichier RC , DLL , autre ?

    J'utilise beaucoup les RES, mais ils sont compilés dans le EXE, donc non indépendants.

    Question 2 : Quel éditeur de ressource utilisez vous ?

    Note : j'ai Delphi 10.2, mais sauf erreur de ma part, il n'intègre pas un tel éditeur ?

    Merci par avance
    Pascal 07300

  2. #2
    Membre actif
    Homme Profil pro
    libre
    Inscrit en
    Juin 2019
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : libre

    Informations forums :
    Inscription : Juin 2019
    Messages : 205
    Points : 292
    Points
    292
    Par défaut
    Vous pouvez ajoutez des fichiers directement a votre application depuis " Projet -> Ressources et images" le compilateur va générer un deuxième fichier ressource qui sera inclus automatiquement dans votre projet.

  3. #3
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 042
    Points : 40 952
    Points
    40 952
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    Q1- un fichier avec une structure bien définie RC ou DLL ou pourquoi pas dans une BDD type SQLite

    Q2- Comme wheel Projet/ressources et images mais je garde toujours sur mes pc une version de XN Ressource Editor
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  4. #4
    Membre confirmé Avatar de blonde
    Femme Profil pro
    Développeur Delphi
    Inscrit en
    Septembre 2003
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Delphi

    Informations forums :
    Inscription : Septembre 2003
    Messages : 278
    Points : 477
    Points
    477
    Par défaut
    Citation Envoyé par pascal07 Voir le message

    Question 1 : Quel type de fichier ressource utiliser pour y intégrer les glyph ?
    Fichier RC , DLL , autre ?

    J'utilise beaucoup les RES, mais ils sont compilés dans le EXE, donc non indépendants.
    Tu peux compiler ton fichier RES indépendamment de l'exe. Il suffit d'utiliser brcc32.exe
    https://docwiki.embarcadero.com/RADS..._de_ressources. Ah oui, en relisant, je comprends ce que tu veux dire. Les ressources sont intégrées au moment de la construction de l'exe.


    Une société dans laquelle j'ai bossé, avait fait le choix d'utiliser une dll pour la gestion des icônes. Donc oui, c'est quelque chose qui se fait. Si tu penses faire de la sorte, ça m'intéresse de voir comment tu l'implémentes.
    Je n'ai jamais appelé de .rc en runtime.


    Citation Envoyé par pascal07 Voir le message

    Question 2 : Quel éditeur de ressource utilisez vous ?
    A une époque j'ai pas mal utilisé Resource Hacker.
    Maintenant, je suis plutôt adepte du package de ressources payantes avec un mini éditeur pour mixer les ressources.

  5. #5
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    j'ai répondu sur un autre forum (sacré farceur !)

    mais pour moi le plus simple c'est tout simplement de charger un BITMAP dans un ImageList...pourquoi le mettre en ressource d'une DLL ? Si c'est pour protéger le fichier, autant le chiffrer et/ou changer son extension
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  6. #6
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 042
    Points : 40 952
    Points
    40 952
    Billets dans le blog
    62
    Par défaut
    Ah, j'ai oublié, il y a les styles du moins pour les programmes FMX.
    Je ne me suis jamais penché sur ceux de VCL et avec un version 10.2 cela ne me semblerai pas réalisable
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  7. #7
    Membre expert
    Avatar de pprem
    Homme Profil pro
    MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Inscrit en
    Juin 2013
    Messages
    1 876
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 876
    Points : 3 611
    Points
    3 611
    Par défaut
    - un ZIP correctement formaté
    - un fichier binaire avec ton propre format ou en export d'un composant Delphi (en utilisant les LoadFromStreaM/SaveToStream)
    - des fichiers indépendants
    - une base de données, mais pas forcément facile d'en extraire des blobs comme on veut
    - une DLL, un BPL, mais bof
    - un site Internet avec un accès au démarrage du programme pour voir s'il répond et si on a accès aux fichiers demandés

    tant de possibilités pour stocker des trucs et les lire quand on a besoin

  8. #8
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 102
    Points : 87
    Points
    87
    Par défaut
    Bonsoir, voila j'ai trouvé une solution:

    1 - je fais une DLL qui contient mes images ( glyph ) avec qu'un fichier RES dedans ( qui contient donc des BMP ).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    library Project2;
    uses
      System.SysUtils,
      System.Classes;
     
    {$R FICHIER_RES.res}
     
    begin
    end.
    Utilisation de Resource Hacker pour éditer / vérifier les BMP dans la DLL générée. ( compilée par Delphi )

    2 - Si le EXE la trouve, il la charge :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HandleDLL := LoadLibrary(pwidechar(FichierDLL));
    et donc le button peut alors charger le glyph de la DLL:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SpeedButton5.Glyph.LoadFromResourceName(HandleDLL,'G');
    et à la fin du programme je libère ma Dll.

    ça marche nickel.

    Merci à tous pour les réponses et les piste
    s.

    Pascal 07300

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Intégrer des icônes dans une DLL
    Par AymenMSD dans le forum Windows XP
    Réponses: 6
    Dernier message: 07/10/2011, 14h31
  2. Intègrer des composants dans une jTable
    Par programaniac dans le forum Débuter
    Réponses: 2
    Dernier message: 30/03/2009, 09h53
  3. comment intégrer des dll dans une application c#
    Par imene_t1 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 23/11/2007, 23h40
  4. Réponses: 3
    Dernier message: 21/06/2007, 18h48
  5. LYCOS ET MYSQL - Intégrer des images dans une base!
    Par archeo dans le forum Installation
    Réponses: 3
    Dernier message: 06/04/2004, 13h45

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