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

Scripts/Batch Discussion :

Script avec pause pour fin execution de fonction - tache planifiée


Sujet :

Scripts/Batch

  1. #1
    Membre confirmé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Novembre 2014
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Dordogne (Aquitaine)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2014
    Messages : 70
    Par défaut Script avec pause pour fin execution de fonction - tache planifiée
    bonjour,

    J’exécute un script qui parcoure un fichier texte et suivant la valeur lue, appelle une fonction ou une autre qui chacune joue un son !

    Lorsque j’exécute le script dans l'environnement PowerShell ISE pas de problème (j’exécute au préalable "Set-ExecutionPolicy RemoteSigned")

    Lorsque j’exécute le script en ligne de commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    powershell -noprofile -executionpolicy Unrestricted -file c:\scripts\main.ps1
    pas pardon plus de problème depuis que dans mon script j'ai ajouté à la fin la commande pour "laisser" le temps à la fonction appelée de s’exécuter pour jouer le son.

    Lorsque j'exécute le script via une tache planifiée (code retour à 0) le script semble s'éxecuté (processus démarré et terminé dans la liste des processus en cours) en revanche pas de son joué ......
    paramétrage de la tâche :
    C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe

    -noprofile -executionpolicy Unrestricted -file "C:\scripts\main.ps1"

    Si quelqu'un a une piste ? Merci

  2. #2
    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
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par david.catus Voir le message
    Si quelqu'un a une piste ?
    Oui, prend la piste cyclable à droite
    Il nous faudrait déjà le début de la pelote, par exemple le code.

    Le contexte d'exécution d'une tâche planifiée peut ne pas charger les prérequis à la lecture d'un son par exemple le service 'AudioSrv'.
    C'est à tester/confirmer.

    Tu peux déjà essayer ceci : write-host ([char]7)

  3. #3
    Membre confirmé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Novembre 2014
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Dordogne (Aquitaine)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2014
    Messages : 70
    Par défaut
    Merci pour votre guidage GPS !

    Les fonctions appelés par le programme principal pour jouer un son :

    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
    function AlerteErreurSonore {
    
    $a = new-object –type system.media.soundplayer
    $a.soundlocation = "C:\scripts\ALARM_BE.wav" 
    $a.play()
    
    }
    
    function AlerteSuccesSonore {
    
    $a = new-object –type system.media.soundplayer
    $a.soundlocation = "C:\scripts\son_sauvegarde_ok.wav" 
    $a.play()
    
    }
    un extrait du code principal :

    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
    If ((Test-Path "c:\Program files (x86)\XXXX\YYYY.log") -eq $True) 
    
    	{
    	Write-Host "le fichier ProcD.log existe"
    	$file = Get-ChildItem "c:\Program files (x86)\XXXX\YYYY.log"
                               	
            if ($file.Length -gt 100000000)
                {
                Write-Host "le fichier a une taille anormale"
                AlerteErreurSonore
                
                }
                else
                {
                Write-Host "la taille du fichier est normale"
                $leFichiertableau=ChargementFichierLog
                $taille =  $leFichiertableau.Length
                
                $resultat=RechercheDerniereSauvegarde($leFichiertableau) Cette fonction vérifie si le contenu du fichier log est cohérent (présence de caractères, dates, etc..)
    
                if ($resultat.$Success) {
                    AlerteSuccesSonore
                    }
                    else {
                    AlerteErreurSonore
                    }
                }
            
    	}
    	else 
        {
    	
    		Write-Host "le fichier XXX.log n'existe pas"
    	}
    Je vais donc chercher la route "le service 'AudioSrv'." mais je ne l'ai jamais vue sur la carte !

    Merci

  4. #4
    Membre confirmé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Novembre 2014
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Dordogne (Aquitaine)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2014
    Messages : 70
    Par défaut Autre approche ?
    Le service audio est actif puisque le script fonctionne manuellement ! par contre ne dois je pas remettre en cause l'approche et essayer de gérer le script comme un job avec la fonction "Register-WMIEvent" ?

    Merci

  5. #5
    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
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par david.catus Voir le message
    Merci pour votre guidage GPS !
    je t'en prie, c'est cadeau
    Citation Envoyé par david.catus Voir le message
    Je vais donc chercher la route "le service 'AudioSrv'." mais je ne l'ai jamais vue sur la carte !
    Probable, j'utilise encore une 'vieille carte ' Seven...

    Citation Envoyé par david.catus Voir le message
    Le service audio est actif puisque le script fonctionne manuellement !
    Certes, mais j'ai abordé "le contexte d'exécution".
    La recherche 'scheduled task system.media.soundplayer' sur notre pire ami, renvoie, par exemple, ceci
    Mais sans tester (manque de temps) ceci ne reste que suppositions..

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/08/2012, 14h12
  2. script avec pidof pour tests services
    Par zorooo dans le forum Shell et commandes GNU
    Réponses: 15
    Dernier message: 21/12/2009, 17h17
  3. Pause à la fin de l'execution
    Par doucs dans le forum Visual C++
    Réponses: 3
    Dernier message: 04/08/2006, 10h07
  4. Executer un script avec la touche "Enter"
    Par Bruno2000 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 23/05/2006, 16h53
  5. Execution script avec option sur OVH
    Par guepe dans le forum Réseau/Web
    Réponses: 3
    Dernier message: 15/01/2006, 15h54

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