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 Pascal Discussion :

[LG]Relancer le programme et chemin d'acces


Sujet :

Langage Pascal

  1. #1
    Candidat au Club
    Inscrit en
    Octobre 2004
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 2
    Points : 2
    Points
    2
    Par défaut [LG]Relancer le programme et chemin d'acces
    Salut
    J'aurais voulu savoir comment faire pour relancer le programme en cours sans passer par reset.
    En fait je voulais utiliser tout simlement un label qui renvoie au debut du programme, misi le probleme c'est qu'il me faudrais placer le goto dans une procedure et le label, dans le program de base (ecrit apres un certain nombre d'autre procedures), mais ca ne marche pas (problemes de position).
    J'arrive a relancer le programme en rentrant directement son chemin d'acces et avec la commande "reset", mais dans ce cas le 1er lancement du prog n'est pas fermé, et je dois en plus rentrer le chemin d'acces complet vers le prog dans la source, ou le faire ecrire par l'utilisateur... a moins que quelqu'un puisse au passage me donner une instruction pour renvoyer le chemin complet du programme lancé et pour l'enregistrer sous une variable...
    Dans tous les cas si quelqu'un peut me donner une maniere simple de relancer un prog au debut, a partir d'une commande contenue dans celui-ci (Suite a 3 choix donnés a l'utilisateur : continuer, recommencer ou arreter le prog )

    Merci pour l'aide. Ciao

    Niko

  2. #2
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 464
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 464
    Points : 4 311
    Points
    4 311
    Par défaut
    Citation Envoyé par Niko92
    J'arrive a relancer le programme en rentrant directement son chemin d'acces et avec la commande "reset"
    C'est quoi cette commande ?

    Pourquoi ne fais-tu pas une boucle dans ton programme principal, du style :

    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
     
    begin
    repeat
    writeln('Choisissez entre :');
    writel,('1 - Continuer');
    writeln('2 - Recommencer');
    writeln('3 - S''arreter');
    writeln('Votre choix : ');
    ch:=readkey;
    case ord(ch) of
    49 : begin;
         { continuer... }
         end;
    50 : begin;
         { recommencer... }
         end;
    end;
    until ord(ch)=51;
    end.
    En adaptant ça bien sûr à ton cas...
    M.Dlb - Modérateur z/OS - Rédacteur et Modérateur Pascal

  3. #3
    Membre expert
    Avatar de Eric Sigoillot
    Inscrit en
    Mars 2002
    Messages
    1 212
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 212
    Points : 3 369
    Points
    3 369
    Par défaut
    Tu peux aussi réorganiser toutes tes procédures pour qu'elles aient un paramètre suplémentaire indiquant quand le programme doit reprendre, un peu dans ce style :
    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
     
    procedure Proc1(...; var Fail: Boolean);
    begin
      ...
      Fail := True;
      ...
    end;
     
    function Proc2(...; var Fail: Boolean): ...;
    begin
      ...
      Proc1(..., Fail);
      if Fail then Exit;
      ...
    end;
     
    procedure Proc3(...; var Fail: Boolean);
    var
      X: ...;
      ...
    begin
      ...
      X := Proc2(..., Fail);
      if Fail then Exit;
      ...
    end;
     
     
    var
      Fail: Boolean;
      ...
    begin
      repeat
        ...
        Proc3(..., Fail);
      until not Fail;
    end.
    Un exemple parmi d'autres... Tu peux aussi placer le contenu du bloc principal de ton programme dans une procédure de façon à le relancer plus facilement.

    Sinon, le chemin d'accès complet à un programme est donné par ParamStr(0).

    D'autre part, Reset en Pascal ISO ser à ouvrir un fichier en lecture seule... Alors je ne vois vraiment pas le rapport. Tu utilises quoi comme compilateur obscur ?

    @++
    Règles du forum
    F.A.Q Pascal

    Pour me joindre (aucune question technique, merci)

Discussions similaires

  1. [Débutant] FileSystemWatcher: Chemin d'accès trop long fait planter mon programme.
    Par BasicZX81 dans le forum VB.NET
    Réponses: 6
    Dernier message: 18/06/2015, 19h24
  2. chemin d'acces du programme qui tourne
    Par kanea_iza dans le forum Windows
    Réponses: 3
    Dernier message: 23/04/2007, 09h03
  3. Réponses: 8
    Dernier message: 20/02/2007, 17h33
  4. Chemin d'accès d'un fichier
    Par guitaros dans le forum Langage
    Réponses: 6
    Dernier message: 16/01/2004, 09h27
  5. Chemin d'accès au clip et scenario en flash
    Par Gential dans le forum Flash
    Réponses: 4
    Dernier message: 28/02/2003, 10h10

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