VBScript pour éteindre les machines sous XP - problème
Hors ligneNi_co Le 21/09/2006 à 16:43 Profil de Ni_co Configuration de Ni_co

Salut,

Nous avons sur notre campus plus de 400 machines. Et nous voulons faire en sorte que les machines s'éteignent automatiquement tous les soirs vers par exemple, 23h00.

Nous voulons faire avec un VBScript qui créé un plannificateur de tâche.

Le script fonctionne bien, c'est à dire qu'il créé la tâche mais ne s'applique pas.
Si je regarde les options de la tâche créé, il faut préciser un user name et mot de passe admin pour que la tâche fonctionne. Mais je ne sais pas comment l'intégrer au script.

Voici le script:

'==========================================================================
'
' VBScript Source File -- Created with SAPIEN Technologies PrimalScript 4.0
'
' NAME: ScheduleShutdown.vbs
'
' AUTHOR: IS Department , IMD
' DATE : 13/09/2006
'
' COMMENT: Schedules a daily shutdown of the computer everyday at 15:00
'
'==========================================================================

strComputer = "."
strOldCommand="shutdown.exe -s -t 00"
strNewCommand=strOldCommand

'Checks if the schedule has already been scheduled
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colScheduledJobs = objWMIService.ExecQuery("Select * from Win32_ScheduledJob")
For Each objJob in colScheduledJobs
if objJob.Command=strOldCommand Then
AlreadyScheduled = True
end If
Next

'If it has not been already scheduled, then schedule it
if not AlreadyScheduled Then
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
JobID = "DailyShutdown"
Set objNewJob = objWMIService.Get("Win32_ScheduledJob")
errJobCreate = objNewJob.Create _
(strNewCommand, "********150000.000000+120", _
True , _
1 OR 2 OR 4 OR 8 OR 16 OR 32 OR 64, _
, _
False, _
JobId)
If not errJobCreate = 0 Then
WScript.Echo "Job not created. Error code = " & errJobCreate
Else
wscript.echo "Scheduled Task created successfully."
End If
Else
wscript.echo "No need to create task"
End If

Merci d'avance pour votre aide,

Nicolas
Hors ligneNiss77640 Le 10/11/2006 à 12:51 Profil de Niss77640 Configuration de Niss77640

Restreindre les horaires d'utilisation de votre ordinateur

Chaque membre de votre famille dispose de sa propre session sous Windows XP, ce qui leur permet de disposer d'un profil distinct. Or vous souhaitez restreindre les horaires d'utilisation de vos enfants, pour qu'ils ne puissent pas se servir de l'ordinateur en semaine après 20h par exemple ou lors de vos absences...

Pour cela, vous allez devoir utiliser la commande net user.

    * Etape 1 : Définir les horaires d'utilisation

Cliquez sur le bouton Démarrer, sur Programmes, Accessoires puis cliquez sur Invite de commandes. Dans la fenêtre qui s'ouvre, saisissez alors la commande suivante :

Net user [nom utilisateur] /time:[jours et heure autorisés]

Remplacez [nom utilisateur] par le nom de l'utilisateur pour lequel vous souhaitez restreindre l'utilisation de l'ordinateur puis [jours et heure autorisés] par les valeurs de restriction. Aidez vous pour cela du tableau suivant :

[jours et heures autorisés]      Description
Lundi,9h00-20h00;Mardi,9h00-21h00;Jeudi,10h00-18h00       L'utilisateur peut uniquement ouvrir une session le lundi entre 9h00 et 20h00, le Mardi entre 9h00 et 21h00 et le Jeudi entre 10h00 et 18h00.
Lundi-Vendredi,9h00-20h00;Samedi-Dimanche,8h00-23h00       L'utilisateur peut ouvrir une session du Lundi au Vendredi entre 9h00 et 20h00 et le Samedi et le Dimanche entre 8h00 et 23h00.
All       L'utilisateur peut ouvrir une session sans aucune restriction. Utilisez cette valeur pour autoriser de nouveau un utilisateur à ouvrir une session à n'importe quel moment.

Ainsi, pour restreindre l'utilisateur Cécile à ne pouvoir ouvrir une session en semaine qu'entre 9h00 et 20h00 et le week-end entre 8h00 et 23h00, saisissez la commande suivante :

net user Cécile /time:Lundi-Vendredi,09:00-20:00;Samedi-Dimanche,08:00-23:00

Validez alors par OK. La restriction s'applique alors immédiatement.


Vous pouvez fermer la fenêtre d'invite de commandes.

Définition des jours
     Les valeurs de jour peuvent être écrites en toutes lettres : Lundi, Mardi, ou bien représentées par des abréviations : L, Ma, Me, J, V, S, D.      

Si l'utilisateur Cécile essaie d'ouvrir une session en dehors des horaires autorisés, elle ne pourra pas aller plus loin.


Le jour où vous souhaitez supprimer toutes les restrictions pour un utilisateur afin qu'il puisse ouvrir une session n'importe quand, saisissez la commande

net user Cécile /time:all

    * Etape 2 : Forcer la déconnexion de l'utilisateur

Les restrictions définies par la commande net user, concernent l'ouverture de session. Dans notre exemple, l'utilisateur Cécile ne peut pas ouvrir de session après 20h00 en semaine. Mais que se passe t'il si elle a déjà ouvert une session auparavant et qu'elle reste après 20h00 ? Et bien par défaut, elle n'est pas déconnectée et peut rester alors aussi longtemps qu'elle le souhaite.

Pour forcer la déconnexion des utilisateurs dès qu'ils sortent de leur plage horaire autorisée, vous devez disposer de l'édition professionnelle de Windows XP. Si vous avez l'édition Familiale, vous devez alors vous contenter de la restriction à l'ouverture des sessions.

Ouvrez le Panneau de configuration en cliquant sur le bouton Démarrer, sur Paramètres puis sur Panneau de configuration. Double cliquez ensuite sur l'élément Outils d'administration puis sur l'icône Stratégie de sécurité locale.


Dans la console Paramètres de sécurité locaux, déroulez le dossier Stratégies locales puis le dossier Options de sécurité.

Double cliquez ensuite sur la stratégie Sécurité réseau : forcer la fermeture de session quand les horaires de connexion expirent.


Sélectionnez alors l'option Activé puis validez par OK.


Désormais, les sessions des utilisateurs dont les horaires de connexion expirent seront automatiquement fermées.
Hors ligneTigene Le 10/11/2006 à 13:48 Profil de Tigene Configuration de Tigene

Viconaute Modérateur
bonjour

Niss, Je pense que tu es complètement hors sujet. De plus il serait correct que tu cites tes sources, plutôt que de faire du copier coller anonyme

@+
--

Ce n'est pas parce qu'on a quelque chose à dire, qu'il faut forcément l'ouvrir

Vous avez résolu votre problème avec VIC ? Faites-le savoir sur les réseaux sociaux !
Vulgarisation-informatique.com
Cours en informatique & tutoriels