Bonjour,
Étape 1 SANS problème :
J'avais un programme en perl Mail_imap.pl qui contrôlait différentes BAL.
Ce programme pouvait être lancé de différentes façons ligne de commande, raccourci, fichier.bat.
Le fichier.bat me servait à lancer l'application par l'intermédiaire du planificateur de tâches de Window7 :
Le lancement par intermédiaire du planificateur se déroulait parfaitement toutes les 30mn.
Code : Sélectionner tout - Visualiser dans une fenêtre à part "C:\Perl\bin\perl.exe" C:\Mail\Mail_imap.pl
En paramètre j'avais opté pour :
- Exécuter même si l'utilisateur n'est pas connecté
Étape 2 AVEC petit problème :
Dans le programme Mail_imap.pl j'ai ajouté un appel à un programme de synthèse vocale : balabolka.exe (Gratuit et SUPER) :
Lorsque je lançais le programme en ligne de commande tout se passait correctement, j'avais l'origine du message ($From) en synthèse vocale.
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 ... if ( $SyntVocal || $Mail_Ini{GLOBAL}{SyntVocal} eq 'OUI' ) { my ( $Executable, $Parametres, $Balabolka, $ComBalabolka ) = (); $Executable = 'C:/Program Files (x86)/Balabolka/balabolka.exe'; $Parametres = '-rmnq'; $Balabolka = $From; $Balabolka = '"'. $Balabolka .'"'; $ComBalabolka = $Executable . $Parametres . $Balabolka; my @Cde = ( $Executable , $Parametres , $Balabolka ); Ano( "\nSYNTHESE= ". $ComBalabolka ."\n" ); #run3 \@Cde; system @Cde; } ... ###################### # Gestion des messages sub Ano { my ( $Message ) = @_; print ANO $Message; print "$Message"; }
Lancé depuis le planificateur, balabolka.exe se chargeait en mémoire mais ne s'exécutait pas ! obligé de le tuer à chaque appel dans le programme !
J'ai fait des traces, j'ai galéré pendant 2 jours... essayé IPC::RUN, IPC::RUN3:Simple... persuadé que la mise en forme de la commande my @Cde était en cause...
Vous remarquerez au passage que la mise en forme (qui fonctionne) ne comporte aucun espace :
Pour que ça fonctionne j'ai dû modifier un paramètre du planificateur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SYNTHESE= C:/Program Files (x86)/Balabolka/balabolka.exe-rmnq"De Spinoza Baruch <spinoza.baruch@hotmail.fr>"
- N'exécuter que si l'utilisateur est connecté
Et c'est impeccable !
Sauf que j'ai toutes les 30mn une fenêtre Taskeng.exe qui s'ouvre avec à l'intérieur la ligne du fichier.bat de commande ainsi que tous les "print"...
J'ai coché [Masqué] dans le menu du planificateur, ne sachant pas à quoi pouvait correspondre cette option, mais pourtant explicite...
J'ai toujours la fenêtre Taskeng.exe qui s'ouvre !
J'ai fait des recherches sur le net, tous les messages sur lesquels je suis tombé traitent de fenêtres intempestives, la mienne ne l'est pas, c'est bien moi qui la déclenche !
J'ai bien sûr essayé toutes les options avec ou sans mot de passe, droits maximums...
Enfin ma question :
Est-il possible d'empêcher cette fenêtre d'apparaître ?
Pardon d'avoir expliciter si longuement le problème, mais je pense qu'il peut servir à d'autres...
MERCI d'avance pour vos suggestions.
PS : Un SUPER GRAND MERCI à Cabos son commentaire m'a mis sur la voie :
http://www.developpez.net/forums/d12...s/#post6883814
Partager