Création tâche planifiée en wsh/vbs [résolu] - sous Windows 2000

Bonjour à tous,

J’ai une petite question à la frontière de plusieurs domaine et je tente d’abord ma chance par chez vous…

C’est un problème de programmation système.

J’ai l’intention de déployer OCS Inventory sur mon site (Logiciel libre d’inventaire de machine à distance) équipé de 200 PC sous Windows 2000. Hors ce logiciel bien que très bien réalisé souffre d’un petit défaut… Dans certains cas quand le PC n’est pas en Service Pack 4 (donc en SP3 principalement) il arrive qu’après le lancement du client qui réalise l’inventaire du poste on ne puisse plus utiliser Internet Explorer (6 SP1 en l’occurence).

Mon but est donc de mettre à jour tout mon parc en SP4 mais de façon transparente pour les utilisateurs. Hors sur certaines machine installer le SP4 à distance depuis un serveur peut prendre jusqu’à trois quarts d’heure. On ne peut pas dire que ce soit vraiment transparent.

Je souhaite donc via le script de logon créer une tâche planifiée qui lancerait la mise à jour la nuit.

Je récupère sans problème la clé “CSDVersion” me permettant de définir le niveau de service pack du pc, mais je bloque sur la manière de créer une tâche planifiée sur le poste client. Et je n’ai rien trouvé d’intéressant sur le net.

Est-ce possible ? Quelqu’un aurait-il une idée ? Le language utilisé est wsh ou vbs.

Merci à ceux qui me fileront un coup de main !
:jap:

En activant les quelques neurones qui me restent, je viens de me rendre compte que je pourrais contourner le problème en lancant un script à la fermeture du pc.

Le problème est que ceux qui vont partir tôt vont saturer le réseau en installant le SP 4, il faudrait donc que je fasse un décompte aléatoire pour qu’ils ne se lancent pas tous en même temps ou du moins suffisament tard pour ne pas gêner les utilisateurs qui bossent encore…

Je vais chercher dans cette direction, mais si vous avez pour la première, n’hésitez pas à poster !

Merci d’avance

Bon ben cherchez pas, j’avais oublié la commande “AT” de windows 2000…
Désolé :ane:

Edit : Un dernier mot pour poster mon script au cas où ça intéresses quelqu’un :

’ But du script :
’ 1 - Définir le niveau de service actuel de la machine
’ 2 - Si la machine est en SP3, programmer une tâche pour lancer la mise à jour silencieuse de façon aléatoire
’ depuis le serveur.

’ Date de réalisation : 17 Juin 2005
’ Auteur : Christophe Marchand

’ DECLARATION DES VARIABLES
Dim wshShell, heure, minute, cmd_line, NumSP

’ INITIALISATION DES VARIABLES
Set WshShell = WScript.CreateObject(“WScript.Shell”)

’ DEBUT DU SCRIPT
NumSP = WshShell.RegRead(“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\CSDVersion”)
IF NumSP = “Service Pack 3” then
Randomize Timer
heure = round(rnd()*6)
Randomize Timer
minute = round(rnd()*60)
cmd_line = “at " & heure & “:” & minute & " /INTERACTIVE cmd /c ““M:\AGR\patches\W2ksp4_fr.exe /Q /O /N”””
call wshShell.Run(cmd_line, 0, False)
End If