Question Sortir l'ordinateur de veille

Plus d'informations
il y a 8 ans 1 mois #24926 par Gabriel
Réponse de Gabriel sur le sujet Re:Sortir l'ordinateur de veille
Bonjour,
J'ai travaillé pour réaliser ce script selon les suggestions de @crogiez. C'est un peu au-dessus de mes compétences.
[code:1]
######## Démarrer l'application Cloud-Station-Backup
&\"C:\Program Files (x86)\Synology\CloudStationBackup\bin\launcher.exe\"
######## Démarrer le service cloud-Station-backup
(get-wmiobject win32_service |where {$_.name -like \"*Cloud Station Backup*\"}).startservice()
##### Préparer le timer
$timer = New-Object System.timers.timer
$timer.interval=60000
$timer.enabled=$true
$timer.AutoReset= $False
Register-ObjectEvent -InputObject $timer -EventName Elapsed -Action {
######## Tuer les processus cloud-backup
$procid=get-process cloud-backup-ui* |select -expand id
stop-process -id $procid -force
$procid=get-process cloud-backup-daemon* |select -expand id
stop-process -id $procid -force
$procid=get-process cloud-backup-connect* |select -expand id
stop-process -id $procid -force
######## Arrêter le service cloud-Station-backup
(get-wmiobject win32_service |where {$_.name -like \"*Cloud Station Backup*\"}).stopservice()
# Arrêter le timer
$timer.stop()
}
$timer.Start()

[/code:1]
En exécution sur Powershell ISE ce code semble marcher.
Où ça se gâte c'est quand je transforme ce script en exe avec ps2exe et que je le mets dans les tâches planifiées windows. C'est le seul moyen que je connaisse dans windows pour planifier ce script à heure-date fixée.
Mais le mécanisme du timer (événement asynchrone pour le programme exécuté) n'est pas compris par le planificateur de tâches, et les tâches associées ne sont pas exécutées.
Ou bien il me faut un autre système de \"timer\" synchrone avec le programme (que je ne connais pas) ou bien il faut insérer cette tâche planifiée dans windows autrement.
Là je cale. Je pourrais faire une boucle de calcul qui dure une heure, mais ça paraît idiot de faire mouliner l'ordinateur pendant une heure pour rien!
:) gabier

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 1 mois #24928 par Laurent Dardenne
gabier écrit:

Mais le mécanisme du timer (événement asynchrone pour le programme exécuté) n'est pas compris par le planificateur de tâches, et les tâches associées ne sont pas exécutées.

Le contexte d'exécution dans une tâche planifié ne propose pas de boucle de message.

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 1 mois #24929 par Laurent Dardenne
je supposes que tu as-tu vérifié la configuration de la tâche, par exemple ceci .
On trouve de nombreux liens autour du pb de tâche qui ne se déclenchent pas.
Et je ne sais pas si ce pb se présente sur une workstation ou un serveur.
Il faudrait déjà vérifier ce mécanisme avant d'aller plus loin.

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 1 mois #24930 par Gabriel
Réponse de Gabriel sur le sujet Re:Sortir l'ordinateur de veille
Bonjour,
Tous les tests sont faits sur un ordinateur personnel PC sous Windows 10, ce que tu appelles je pense une workstation.
Les paramètres de veille et d'alimentation sont répartis en 2 modes
: MODE NORMAL
Eran éteint après 15mn
Ordinateur en veille après 30 mn
Paramètres avancés
- Autoriser la veille hybride : Oui
- Mettre en veille profonde après: Jamais
- Autoriser les minuteurs de sortie de veille :Activer
MODE \"NON-STOP\"
Eran éteint après 15mn
Ordinateur en veille après: Jamais
Paramètres avancés
- Autoriser la veille hybride : Oui
- Mettre en veille profonde après: Jamais
- Autoriser les minuteurs de sortie de veille :Activer

Les tests ont té faits en mode NON-Stop

Mon intuition pas très savante est que le problème réside plutôt dans la boucle d'attente asynchrone que dans les paramètres de la tâche.

J'espère que tout cela répond à tes questions, je vais chec=cher de mon côté

:) gabier


:)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 1 mois #24931 par Laurent Dardenne
Selon ceci :
gabier écrit:

J'ai remarqué que si je laisse l'ordinateur vivre sa vie, il arrive que les processus et services ne soient pas arrêtés.

il te faut déjà savoir, à l'aide de trace par exemple, si le code associé à la tache est toujours démarré, ensuite que le script ne fasse pas ce qu'on lui demande c'est une autre affaire :-)

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 1 mois #24932 par Gabriel
Réponse de Gabriel sur le sujet Re:Sortir l'ordinateur de veille
Bonjour Laurent

Oui bien sûr, j'avais expurgé mon code cité plus haut des traces que j'envoie dans mon log.

Oui, le script est démarré systématiquement. J'ai soupçonné la partie asynchrone parce que la première partie qui démarre des applications, et qui est synchrone est également effectuée.
C'est la deuxième, liée au timer qui ne s'exécute pas.
j'ai donc cherché à faire une boucle d'attente de 1h synchrone. J'ai trouvé une solution qui a l'air de marcher avec stopwatch. Voici ma boucle d'attente. je regarde tous les 5 minutes si l'heure n'a pas été dépassée. Il y a sans doute plus élégant ...
[code:1]
$watch=[System.Diagnostics.Stopwatch]::«»startNew()
$DateStart=$watch.Elapsed.TotalSeconds
$DateFin=$DateStart+3600
Do{
Start-Sleep -s 300
$DateCour=$watch.Elapsed.TotalSeconds
}while($DateCour -le $DateFin)
[/code:1]
J'essaie ce soir en grandeur réelle. Je vous tiens au courant.

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.062 secondes
Propulsé par Kunena