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 :

Compiler un .exe en silence


Sujet :

Langage Delphi

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 88
    Points : 11
    Points
    11
    Par défaut Compiler un .exe en silence
    bonsoir à tous,

    Je viens vous poser une questuion pour savoir si il est possible de ne pas voir l'éxécution du code que je viens de créer?
    Je veux dire, pas de fenêtre,? Est-ce possible?

    merci par avance.

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 93
    Points : 53
    Points
    53
    Par défaut
    S'il y a déjà une fenêtre, en la cachant avec 'hide', eu/ou la posant sur la barre de notification (près de l'horloge).

  3. #3
    Membre chevronné
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Points : 2 158
    Points
    2 158
    Par défaut
    CTRL+F9 ou bien Projet/construire.

    Cela contruit l'application sans la lancer en mode debuggage. Je m'en sert tres souvent
    Disons que 8 appels a la compilation sur 10 sont des CTRL+F9 et seulement 2 des F9
    On passe du temps a vous repondre, alors soyez sympas, passez du temps ..... a vous relire !
    --
    Pourquoi tant de haine pour cette pauvre aide Delphi ????
    Aiiimezzz laaaaa .... Si-Non-Cham-Pi-Gnon !!!
    --
    Pour plus de Renseignements : Venez me rejoindre sur Msn .... Promis je mords pas

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 88
    Points : 11
    Points
    11
    Par défaut
    Salut,

    merci pour taréponse.

    J'ai fait en début de cose:

    Form1.hide;, mais cela ne change rien.
    en fait, c'est pour l'integrer a un autre logiciel pour qu'il fasse appel a celui que je fait..
    Et il doit l'appeller en silence alors bon. c'est pas jouable?

    Citation Envoyé par Clorish Voir le message
    CTRL+F9 ou bien Projet/construire.

    Cela contruit l'application sans la lancer en mode debuggage. Je m'en sert tres souvent
    Disons que 8 appels a la compilation sur 10 sont des CTRL+F9 et seulement 2 des F9
    Salut,

    Je viens de le faire, mais cela revient au même.

    J'ai du faire une bétise, car je débute alors..

  5. #5
    Membre chevronné
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Points : 2 158
    Points
    2 158
    Par défaut
    Citation Envoyé par belle5656 Voir le message
    en fait, c'est pour l'integrer a un autre logiciel pour qu'il fasse appel a celui que je fait..
    Et il doit l'appeller en silence alors bon. c'est pas jouable?
    Sisi tout a fait ... mais il y a plein de moyens pour faire cela ....
    disons que pour faire propre j'opterais pour une version Exe/Dll en mettant toutes les fonctions importantes dans la Dll est l'exe ne contiendrais que l'interface GUI mais a mon avis cela est encore trop chaud pour toi

    PAr contre je me demande si en fait tu ne cherche pas a faire une application console (sans interface Graphique)

    Dans ce cas, tu fais : Menu/Nouveau/Autre/Application console.
    Ensuite tu pourras piloter ton executable via un autre logiciel en ligne de commande et en lui transmettant divers parametres (principe des GUI de logiciels console sous Linux)

    Mais un peu plus de precisions sur ce que tu veux faire exactement, serait un plus


    Citation Envoyé par belle5656 Voir le message
    J'ai du faire une bétise, car je débute alors..
    Bienvenue parmis nous
    Mais fait attention ... tous ceux qui sont venu ici ne sont plus jamais repartit
    On passe du temps a vous repondre, alors soyez sympas, passez du temps ..... a vous relire !
    --
    Pourquoi tant de haine pour cette pauvre aide Delphi ????
    Aiiimezzz laaaaa .... Si-Non-Cham-Pi-Gnon !!!
    --
    Pour plus de Renseignements : Venez me rejoindre sur Msn .... Promis je mords pas

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 88
    Points : 11
    Points
    11
    Par défaut
    oki, alors en fait, j'ai fait ce bout de programme pour un autre logiciel.
    Et il faudrait qu'a un moment, le programme A appelle le B en silence.
    Sans lancer de fenêtre ni rien.

    Là, il fonctionne, mais avec une fenêtre..

  7. #7
    Membre chevronné
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Points : 2 158
    Points
    2 158
    Par défaut
    DE but en blanc, je te propose de rajouter dans le source du projet la ligne suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Begin
    Application.Initialize;
    Application.ShowMainFrom(False);  // Code a rajouter
    Applicaiton.CreateForm(TForm1, Form1);
    Application.run
    End;
    Mais je pense que tu devrais revoir la facon ton ton application est concue. Regarde un peu du coté des Dlls pour voir si ca ne te correspondrais pas.
    Ca sert a ca : PArtager du code entre plusieurs applications.

    Sinon tu peux aussi reperer le code a reutiliser et creer uen serie de fonctions/classes que tu pourras ajouter a ton application B directement pour eviter de tout recoder.

    A mon avis si tu n'as pas besoin de l'interface graphique de ton application A, c'est que le code fonctionnel peut etre ciblé et dissocié de l'nterface graphique.
    D'ou un penchant pour la creation d'un module DLL independant.
    On passe du temps a vous repondre, alors soyez sympas, passez du temps ..... a vous relire !
    --
    Pourquoi tant de haine pour cette pauvre aide Delphi ????
    Aiiimezzz laaaaa .... Si-Non-Cham-Pi-Gnon !!!
    --
    Pour plus de Renseignements : Venez me rejoindre sur Msn .... Promis je mords pas

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 88
    Points : 11
    Points
    11
    Par défaut
    Yep, oki marci! alors pour le code, il me marque:

    [Erreur] Unit1.pas(31): E2003 Identificateur non déclaré : 'ShowMainFromCreate'

    Et pour faire une Dll, c'est encore une autre paire de manche nan?

  9. #9
    Membre chevronné
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Points : 2 158
    Points
    2 158
    Par défaut
    Citation Envoyé par belle5656 Voir le message
    [Erreur] Unit1.pas(31): E2003 Identificateur non déclaré : 'ShowMainFromCreate'
    Alors autant pour moi ... j'ai fait ca de tete
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.ShowMainForm := False;
    Citation Envoyé par belle5656 Voir le message
    Et pour faire une Dll, c'est encore une autre paire de manche nan?
    C'est plus compliqué mais interessant

    PAr contre peut tu si tu en as le droit nous dire ce que fait A, ce que fait B et quel est le code (ie fonctionnalitées) de A que tu souhaite reutiliser dans B
    On passe du temps a vous repondre, alors soyez sympas, passez du temps ..... a vous relire !
    --
    Pourquoi tant de haine pour cette pauvre aide Delphi ????
    Aiiimezzz laaaaa .... Si-Non-Cham-Pi-Gnon !!!
    --
    Pour plus de Renseignements : Venez me rejoindre sur Msn .... Promis je mords pas

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 88
    Points : 11
    Points
    11
    Par défaut
    Ben non je peux pas trop alors bon.

    Désolé, je ne facilite pas la tâche.

    Pour le code que tu m'as demandé d'inserer, la fenêtre s'ouvre encore, et cela fait planter Delphi, je dois le relancer.

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 88
    Points : 11
    Points
    11
    Par défaut
    RE,

    C'est bon, tout est en ordre, j'ai lancé une application Console, et j'ai copier/cooler mon code original.

    Cela n'a pas fonctionné, alors j'ai supprimé testé, supprimé testé..Et cela a fonctionné!

    Ne me demandé pas ce que j'ai fait hein?

    @++ et merci.

    J'adore ce langage!

  12. #12
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Points : 4 935
    Points
    4 935
    Par défaut
    Citation Envoyé par belle5656 Voir le message
    Ben non je peux pas trop alors bon.
    Pour le code que tu m'as demandé d'inserer, la fenêtre s'ouvre encore, et cela fait planter Delphi, je dois le relancer.
    Salut,

    As tu mis le code dans la bonne "section" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    Application.ShowMainForm := False;
    end;
    Celà fonctionne parfaitement
    A+ et bon courage

  13. #13
    Membre chevronné
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Points : 2 158
    Points
    2 158
    Par défaut
    Citation Envoyé par ero-sennin Voir le message
    As tu mis le code dans la bonne "section" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    Application.ShowMainForm := False;
    end;
    Oulala .. je sais pas si c'est bien correct ca.
    Personnelement je le laisserais dans le source du projet.

    Sinon si ca marche a partir d'une application console, tu peux sans probleme regroupper ton code dans des unitees a part (separées de l'interface graphique) pour pouvoir les reutiliser directement dans le source de ton application B.
    Ou bien, ce qui serait encore mieux, compiler ton application non pas depuis un projet "applciation console, mais un projet Dll.
    La ca va te demander un peu plus de travail et quelques galeres mais une fois maitrisée t'ouvrera des portes tres interessantes
    Je peux t'aider si tu le desire

    Une fois ton code mis dans une Dll, elle peut etre pilotée soit par un exe avec l'interface graphique (Application A) soit par l'applciation B.

    Cela sera te permettra plus de choses que l'usage d'une application console ou la transmission d'information entre les 2 applciation est plus dure et complexe que d'une Dll vers un Exe.
    On passe du temps a vous repondre, alors soyez sympas, passez du temps ..... a vous relire !
    --
    Pourquoi tant de haine pour cette pauvre aide Delphi ????
    Aiiimezzz laaaaa .... Si-Non-Cham-Pi-Gnon !!!
    --
    Pour plus de Renseignements : Venez me rejoindre sur Msn .... Promis je mords pas

Discussions similaires

  1. Programme ASM compilé en .EXE pour amorcer sur HDD
    Par SebioHazard dans le forum x86 16-bits
    Réponses: 30
    Dernier message: 21/01/2008, 00h30
  2. Editer et modifier du code C# compilé en.exe
    Par vladvad dans le forum C#
    Réponses: 8
    Dernier message: 23/10/2007, 02h50
  3. [VB2005]comment creer, apres la compilation un exe
    Par PROGDEV2paris dans le forum VB.NET
    Réponses: 1
    Dernier message: 28/01/2007, 12h45
  4. Compilé en .exe standard (native)
    Par khalidpro dans le forum C#
    Réponses: 4
    Dernier message: 22/01/2007, 20h16
  5. Compiler un exe avec une variable
    Par bimus dans le forum Powerbuilder
    Réponses: 1
    Dernier message: 20/11/2006, 11h54

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