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 :

modification d'un fichier dfm d'un autre projet


Sujet :

Delphi

  1. #1
    Membre du Club Avatar de zoheir13
    Inscrit en
    Décembre 2006
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 114
    Points : 66
    Points
    66
    Par défaut modification d'un fichier dfm d'un autre projet
    Salut, je voudrais modifier le fichier dfm d'un autre projet et de recompiler le projet modifier par dcc32 et make , car je voudrais associer une requette sql à IBQuery et de recompiler le projet.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    624
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 624
    Points : 754
    Points
    754
    Par défaut
    Fô arrêter de fumer la moquette

  3. #3
    Membre chevronné Avatar de philnext
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 552
    Points : 1 780
    Points
    1 780
    Par défaut
    Vous pouvez répéter la question ?

  4. #4
    Membre du Club Avatar de zoheir13
    Inscrit en
    Décembre 2006
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 114
    Points : 66
    Points
    66
    Par défaut
    Citation Envoyé par philnext
    Vous pouvez répéter la question ?

  5. #5
    Membre du Club Avatar de zoheir13
    Inscrit en
    Décembre 2006
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 114
    Points : 66
    Points
    66
    Par défaut
    je voudrais modifier le fichier dfm par un autre programme, et de recompiler le projet correspond à ce dfm

  6. #6
    Membre confirmé Avatar de Issam
    Inscrit en
    Mars 2002
    Messages
    578
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mars 2002
    Messages : 578
    Points : 604
    Points
    604
    Par défaut
    pourquoi ?

    il y'a surement moyen de faire autrement

    quel est le pb exactement ?

  7. #7
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 549
    Points : 25 119
    Points
    25 119
    Par défaut
    Si je comprends tu as un exe, mais pas les sources, et voudrais modifer l'exe (extraire les ressources dont les DFM, modifié le SQL d'une Query dans une DFM, et réintégrer les ressources dan l'exe)

    ... sinon tu as les sources et tu n'a rien compris à la programmation sous DELPHI ...
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    624
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 624
    Points : 754
    Points
    754
    Par défaut
    S'il veux recompiler, c'est qu'il a les sources!
    Ou alors il fume la moquette.

  9. #9
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Attendez les réponses aux questions posées par Issam, un peu de patience et d'empathie ça fait pas de mal .

  10. #10
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    624
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 624
    Points : 754
    Points
    754
    Par défaut
    Ou alors il veux une technique de hack...style injection sql.
    et ça c'est pô bien

  11. #11
    Membre du Club Avatar de zoheir13
    Inscrit en
    Décembre 2006
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 114
    Points : 66
    Points
    66
    Par défaut
    j'ai deux projet différent avec mon code source, et je veut à partir de l'executable du premier projet modifier quelque paramètre du 2iem projet et de recompiler(ce 2 projet) pour générer un autre executable qui prend en charge les modification effectuer. c'est pour cette raison je veut modifier le fichier dfm du projet quand veul modifier et de recompiler ce projet.

  12. #12
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    624
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 624
    Points : 754
    Points
    754
    Par défaut
    la solution la plus simple est de lire la requete depuis un fichier.
    Sinon il y a la solution des procedures stoquées en modifiant la procédure depuis une application, ou les IPC( fichier mappés en mémoire) etc...

  13. #13
    Membre du Club Avatar de zoheir13
    Inscrit en
    Décembre 2006
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 114
    Points : 66
    Points
    66
    Par défaut
    mon pb:
    j'ai créer une application qui permet de générer une requette SQL pour supprimer des ligne d'une table ( l'utilisateur n'a pas le deroit de supprimer), je veut associer cette requette à ibquery qui est dans un autre projet et générer un executable pour que je peut donner l'executable à l'utulisateur qui a demamnder la suppression d'une ligne avec mon accord, et je ne veut pas modifier à chaque fois le code source pour modifier la requette sql et de recompiler je veut que tous sa se fait par programmation.
    je ne veut pas donnér la requette directement à l'utulisateur (pour ne pas modifier) c'est pour cette raison que veut metre cette requtte dans un exectable aprés l'affectation du requette à ibquery et la recompilation.

  14. #14
    Membre du Club Avatar de zoheir13
    Inscrit en
    Décembre 2006
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 114
    Points : 66
    Points
    66
    Par défaut
    je veut associer la requtte au moment de compilation, car la solution de mettre la requtte dans un fichier demande l'existance de ce fichier au moment de l'execution (je ne veut pas donner la requtte dans un fichier à l'utulisateur), je veut que cette requette soit affecter à ibQuery au moment de compilation

  15. #15
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 549
    Points : 25 119
    Points
    25 119
    Par défaut
    En fait tu as un programme, une sorte d'éditeur ... qui compile des sources pour générer un autre programme ? tout ça pour lancer une requête "secrète" pour que tes utilisateurs ne triche pas ...

    Bon, si tu sais déjà compilé en ligne de commande un exécutable, modifier une DFM (Texte ou Binary) n'aurait pas du être compliqué ce n'est que de la modification de fichier, mais cela me semble peu viable à long terme ...

    Je te propose une solution différente ...
    Tu as actuellement le Client ZoheirSoft ... lui ne change pas
    Tu vas créer et donner à ton Client ZoheirTools ... c'est nouveau (c'est ton programme qui contient le SQL)
    Tu vas créer un programme pour toi uniquement ZoheirAdmin (c'est ton editeur de SQL qui devrait remplacer dans la DFM et recompiler)

    ZoheirTools, c'est juste une petite fenêtre avec un bouton qui lance une requête
    Cette requête est stockée dans un fichier, et ce fichier est Crypté (le cryptage, si tu n'as pas de fonction qui le fait, je peux t'en filer une très débile mais rend le fichier non lisible et puis tes utilisateurs ça ne semble pas être des informaticiens)
    une fois la requête lancée, le fichier est supprimé

    Tu as ZoheirAdmin, lui la seule chose qu'il fait c'est un editeur de SQL (un TMemo suffira) et il écrit la requête dans un fichier et crypte le fichier !

    C'est quand même moins tordu non ?
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  16. #16
    Membre du Club Avatar de zoheir13
    Inscrit en
    Décembre 2006
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 114
    Points : 66
    Points
    66
    Par défaut
    j'ai pensé a cette solution mais j'ai pas trouver des fonctions de cryptage et de décryptage, est ce que tu peut me envoyer une fonction de cryptage. sinon je vait sauvgarder les ligne que je vait suuprimer dans une BDD (firebird) puis je vait compresser cette base de données pour obtenir BDD.jbk (firbirde) pour donner ce fichier à l'utulisateur

    merçi mes amie

    Voiçi mon mail:
    b.zoheir at yahoo.fr

  17. #17
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 549
    Points : 25 119
    Points
    25 119
    Par défaut
    Tient pondu à la sauvage, à l'instant, cryptage à la con, mais ça devrait suffir non ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    procedure CryptFile(const InFileName, OutFileName: string);
    var
      InFile, OutFile: File;
      InBuffer: array[Byte] of Byte;
      OutBuffer: array[Byte] of Word;
      I: Integer;
      AmtTransferred: Integer;
    begin
      AssignFile(InFile, InFileName);
      Reset(InFile, 1);
      try
         AssignFile(OutFile, OutFileName);
         Rewrite(OutFile, 2);
         try
           while not EOF(InFile) do
           begin
             BlockRead(InFile, InBuffer, Length(InBuffer), AmtTransferred);
             for I := Low(InBuffer) to AmtTransferred - 1 do
             begin
               OutBuffer[I] := Sqr(InBuffer[I]);
             end;
             BlockWrite(OutFile, OutBuffer, AmtTransferred);
           end;
     
         finally
           CloseFile(OutFile);
         end;
      finally
        CloseFile(InFile);
      end;
    end;
     
    procedure DeCryptFile(const InFileName, OutFileName: string);
    var
      InFile, OutFile: File;
      OutBuffer: array[Byte] of Byte;
      InBuffer: array[Byte] of Word;
      I: Integer;
      AmtTransferred: Integer;
    begin
      AssignFile(InFile, InFileName);
      Reset(InFile, 2);
      try
         AssignFile(OutFile, OutFileName);
         Rewrite(OutFile, 1);
         try
           while not EOF(InFile) do
           begin
             BlockRead(InFile, InBuffer, Length(InBuffer), AmtTransferred);
             for I := Low(InBuffer) to AmtTransferred - 1 do
             begin
               OutBuffer[I] := Trunc(Sqrt(InBuffer[I]));
             end;
             BlockWrite(OutFile, OutBuffer, AmtTransferred);
           end;
     
         finally
           CloseFile(OutFile);
         end;
      finally
        CloseFile(InFile);
      end;
    end;
     
    procedure TFrmTestFichier.BtnCryptClick(Sender: TObject);
    begin
      CryptFile(EdPathSearch.Text, EdPathSearch.Text+ '.Crypt');
    end;
     
    procedure TFrmTestFichier.btnDeCryptClick(Sender: TObject);
    begin
      DeCryptFile(EdPathSearch.Text+ '.Crypt', EdPathSearch.Text+ '.DeCrypt');
    end;
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  18. #18
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    624
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 624
    Points : 754
    Points
    754
    Par défaut
    Sinon, le cryptage Rot13 est simple à mettre en oeuvre comme les cryptages "XOR".

    Une autre idée de conception:

    1) Ton appli cliente s'appuye sur com pour exposer via une interface IQueryFactory une méthode genre CreateSqlQuery(aRequete: string).

    2) Depuis une autre appli via COM ou DCOM(Ca devient intéressant) , tu demandes l'objet TQueryFactory puis tu appelles sa méthode CreateSqlQuery en lui transmettant la requete sous forme d'une chaine de caracteres.

    La requete est mise à jour via cet appel (local ou distant) de méthode.

    PS
    Pour le cryptage Xor, l'avantage c'est que le premier Xor crypte et lel second décrypte.
    exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Cle Xor simpliste: 011
     
      données à crypter:  110
     
     -> 110 xor Cle = 101
     
    décryptage 
        101 Xor Cle = 110

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 19/06/2015, 11h04
  2. [Framework] Accès fichier .properties d'un autre projet
    Par cakeke dans le forum Spring
    Réponses: 1
    Dernier message: 14/08/2010, 13h07
  3. Réponses: 2
    Dernier message: 21/11/2007, 13h48
  4. [langage] Date de modification d'un fichier
    Par Cyspak dans le forum Langage
    Réponses: 2
    Dernier message: 24/06/2003, 15h49
  5. Réponses: 9
    Dernier message: 22/03/2003, 21h47

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