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 :

Comment pourais-je modifier cet exécutable ?


Sujet :

Langage Delphi

  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2008
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Ukraine

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2008
    Messages : 162
    Points : 163
    Points
    163
    Par défaut Comment pourais-je modifier cet exécutable ?

    bonjour,
    j'ai un exécutable qui devra être exploité par un autre, et dans cette opération je suis confronté à deux problèmes :

    1) pourrais-je changer l'icône de l'exécutable à partir du second ? et ce évidemment en prenant compte qu'il soit déjà compilé (donc pas touche la source!!), j'ai cherché sur le net, j'ai rien trouvé à part des trucs qui marchent pas.

    2) j'ai besoin d'écrire des infos dans cet exécutable, et donc pour ça j'utilise TFileStream, sauf que je ne dois pas faire un seek-la taile que je veux puis écrire, sinon j'écrase les vrai données de l'exe, et donc si je seek à la fin, puis écrit directement avec WriteBuffer, ça donne une erreur, puis-je faire autrement ?

    merci !

  2. #2
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 693
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 693
    Points : 13 128
    Points
    13 128
    Par défaut
    1. Je ne sais pas...

    2. En connaisant la taille des données, tu les ajoutes à ton exe puis tu ajoute cette information de taille (ex. un dword) à la toute fin de l'exe. A l'exécution, tu vas à la toute fin de l'exe -4 bytes (dword) et tu récupère cette taille qui te donneras l'offset (négatif) du début des données.

    Ou l'inverse, le dernier dword contient la taille de l'exe d'origine pour un offset positif .

    Attention, ces façons de procéder ne supportent pas la signature numérique de l'exe.

  3. #3
    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
    regarde BeginUpdateResource, UpdateResource et EndUpdateResource
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2008
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Ukraine

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2008
    Messages : 162
    Points : 163
    Points
    163
    Par défaut Merci.
    Merci pour vous réponses.
    Comme j'ai pas beaucoup de réponses, je vais mettre résolu. J'ai pas encore testé vos "recommandations".

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

Discussions similaires

  1. CSS comment puis-je modifier mon code pr avoir un bord blanc
    Par pierrot10 dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 30/09/2005, 20h19
  2. [VCL] Comment changer de langue à l'exécution ?
    Par Zatoobux dans le forum Composants VCL
    Réponses: 1
    Dernier message: 27/09/2005, 18h08
  3. Réponses: 6
    Dernier message: 22/09/2005, 16h59
  4. Réponses: 3
    Dernier message: 20/04/2005, 12h30
  5. Comment faire pour modifier une ligne dans une DBGrid?
    Par Nico62 dans le forum C++Builder
    Réponses: 6
    Dernier message: 29/03/2005, 12h24

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