Bonjour à tous,

J'ai déjà lu quelques sujets sur le forum à ce propos, mais je n'y trouve pas ma réponse.

Depuis un script, je désire en démarrer un autre, sans que ca n'interrompe le premier. Par la suite, j'aimerais également pouvoir arrêter le script.

Si j'ai bien compris, il s'agit de faire un fork. Cependant, je n'arrive pas à mon but.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
sub startprog {
 FORK:{
    my $pid;
    if ($pid=fork) {
	return "start";
    } elsif (defined $pid) {
      system('perl monprog.pl');
      exit(0);
    } else {
      return -1;
    }
  }
}
En effet, ce code démarre bien mon script monprog.pl, mais ne continue pas le script parent (n'affiche pas start tant que monprog.pl fonctionne).

Le terminal qui s'ouvre pour monprog.pl s'affiche en premier plan, y'a-t-il un moyen de masquer la fenetre en arrière plan?

Pouvez-vous me donner des pistes pour l'arrêt du programme ?

Petite précision peut-être utile : je travaille sous ActivePerl (Windows).

Merci d'avance! Et bon week-end!

Lily