Script aag_cloudwatcher

Script pour lancer le logiciel aag_cloudwatcher au démarrage de Windows

J’utilise le logiciel Sequence Generator Pro v3.0 pour automatiser la gestion de mon observatoire. Je possède un AAG CloudWatcher de Lunático Astronomia pour surveiller le ciel et fermer le toit si le ciel se couvre.

https://www.lunatico.es/images/AAG-transp.png

Mon problème était, j’oubliais souvent de démarrer le logiciel du cloudwatcher et SGPro détectait au lancement de la session, une situation « Unsafe » puis ordonnait d’arrêter la session. J’ai donc cherché à lancer automatiquement aag_cloudwatcher.exe à l’ouverture de ma session (Windows 10 pro). Sur le site de Lunático Astronomia, j’ai trouvé un script VBScript (diminutif de Microsoft Visual Basic Scripting Edition, créé par Microsoft), pour lancer le software au lancement de Windows. Ce script est à placer dans le répertoire Startup du menu démarrer.

' start aag_cloudwatcher software and start the device
' Lunático Astronomia 
'******************************************************* 
Dim oCW 
set oCW = CreateObject("AAG_CloudWatcher.CloudWatcher") 
oCW.Device_Start() 
oCW.RecordStart False 
Set oCW=nothing

Mais cela ne fonctionne pas, au démarrage de Windows le script se lance, mais avec un message d’erreur, il faut une élévation du niveau. Un script ne peut pas être configuré pour être démarré en mode administrateur. J’ai donc recherché pendant un moment une solution pour contourner le problème. J’ai trouvé la solution sur un forum en anglais, sur https://social.technet.microsoft.com. Ci-dessous le code complet.

'---------------------------------------
'aag_cloudwatcher.vbs
'---------------------------------------
'Elevate this script before invoking it.
'25.2.2011 FNL
'---------------------------------------
bElevate = False
if WScript.Arguments.Count > 0 Then If WScript.Arguments(WScript.Arguments.Count-1) <> "|" then bElevate = True
if bElevate Or WScript.Arguments.Count = 0 Then ElevateUAC
'******************
Dim oCW
set oCW = CreateObject("AAG_CloudWatcher.CloudWatcher")
oCW.Device_Start()
oCW.RecordStart False
Set oCW=nothing
'******************
Sub ElevateUAC
    sParms = " |"
    If WScript.Arguments.Count > 0 Then
            For i = WScript.Arguments.Count-1 To 0 Step -1
            sParms = " " & WScript.Arguments(i) & sParms
        Next
    End If
    Set oShell = CreateObject("Shell.Application")
    oShell.ShellExecute "wscript.exe", WScript.ScriptFullName & sParms, , "runas", 1
    WScript.Quit
End Sub

Maintenant il faut configurer Windows pour que le script se lance à chaque ouverture de session. Pour cela je fais appel au Planificateur de tâches de Windows.

Dans le planificateur de tâches – Créer une tâche de base….

On va créer une tâche de base… Lui donner un nom et une description

Créer une tâche de base

Sélectionner le déclencheur de la tâche, pour notre cas, c’est « Quand j’ouvre une session » c’est au cas où je me déconnecterais de mon compte, pour être sûr que le script soit relancé.

Sélectionner le déclencheur de la tâche

Nous définissons l’action à mener, lancer un programme, plus exactement notre script « aag_cloudwatcher.vbs »

Définir l’action, démarrer un programme

Sélection du script en question à sont emplacement sur le disque dur, attention à ne pas effacer ou déplacer le script par la suite. Si c’était le cas, il faut reconfigurer la tâche avec le nouvel emplacement du script.

on sélectionne le script en question

Petite vérification des options et on clique sur « Terminer »

 

La tâche que nous venons de créer est bien dans la liste

Pour essayer le bon fonctionnement, on peut se délogger de sa session ou redémarrer l’ordinateur, et vérifier que aag_cloudwatcher.exe a bien démarré et que aag_cloudwatcher est bien présent sur le bureau, et que la surveillance est active. Normalement le logiciel démarre maximisé.

Bon ciel 😉

 

Les commentaires sont fermés