GPEDIT.MSC -- Scripts a l'arret -- Batch

Une difficulté, une précision posez vos questions

Modérateur : WIN32-[GG]

Répondre
foxbib
Batcheur occasionnel
Messages : 2
Enregistré le : 19 nov. 2011 16:22

GPEDIT.MSC -- Scripts a l'arret -- Batch

Message par foxbib »

Vous ne pouvez pas voter pour votre propre billet.
0

Bonjour,



Je viens a vous pour trouver une solution a mon probleme de lancement de scripts a l'extinction de la machine.

Ce que je souhaite faire : Lancer un script .bat a chaque arrêt de la machine ( script qui connecte un lecteur réseau et exécute un programme ).



Bien sur ce script prendra en compte l'heure local de machine pour ne s’exécuter qu'a partir d'une certaine heure.

Déroulement voulu : Il est 18h30, notre utilisateur a fini sa journé et ferme son poste. Le script démarre et exécute le programme, rend la main et le pc s'éteint.

Il est 17h30, notre utilisateur éteint son poste. le script s’exécute, voit qu'il n'est pas l'heure de lancé le programme, rend la main et le pc s'éteint.





Pour ce faire, j'utilise l'utilitaire Gpedit.msc sous windows xp Pro :

Démarrer -> gpedit.msc > configuration ordinateur -> Scripts (démmarrage/arret) -> Arret du system -> et j'ajoute mon script.

Avec cette methode, le script se lance et s'execute, tout va bien.



Le probleme est que je ne sais pas comment mettre en place tous sa en ligne de commande. De plus j'ai remarquer qu'une simple copie de fichier a partir d'une autre machine ne suffisait pas. D'ou ma question,



Avez vous une façon simple (script,vbs,...) de faire ce que je voudrai ???



Par avance, Merci de vos réponse

Cordialement,
foxbib
Batcheur occasionnel
Messages : 2
Enregistré le : 19 nov. 2011 16:22

Re: GPEDIT.MSC -- Scripts a l'arret -- Batch

Message par foxbib »

j'ai réussi a trouvé la solution.

Je la met ici si çà peut aider quelqu'un.



Pour ce faire, j'ai utilisé l'utilitaire Gpedit.msc sous windows xp Pro :

Démarrer -> gpedit.msc > configuration ordinateur -> Scripts (démmarrage/arret) -> Arret du system -> et j'ajoute mon script ("script.bat") et je ferme gpedit.msc.

Ensuite je copie le dossier C:\windows\system32\GroupPolicy

et j'extrai les clés suivantes du registres:




Code : Tout sélectionner

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System\Scripts]

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System\Scripts\Shutdown]

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System\Scripts\Shutdown\0]
"GPO-ID"="LocalGPO"
"SOM-ID"="Local"
"FileSysPath"="C:\\WINDOWS\\System32\\GroupPolicy\\Machine"
"DisplayName"="Stratégie de groupe locale"
"GPOName"="Stratégie de groupe locale"

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System\Scripts\Shutdown\0\0]
"Script"="script.bat"
"Parameters"=""
"ExecTime"=hex(b):00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System\Scripts\Startup]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts\Shutdown]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts\Shutdown\0]
"GPO-ID"="LocalGPO"
"SOM-ID"="Local"
"FileSysPath"="C:\\WINDOWS\\System32\\GroupPolicy\\Machine"
"DisplayName"="Stratégie de groupe locale"
"GPOName"="Stratégie de groupe locale"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts\Shutdown\0\0]
"Script"="script.bat"
"Parameters"=""
"ExecTime"=hex(b):00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts\Startup]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\History]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\History\{42B5FAAE-6536-11d2-AE5A-0000F87571E3}]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\History\{42B5FAAE-6536-11d2-AE5A-0000F87571E3}\0]
"Options"=dword:00000000
"Version"=dword:00090009
"DSPath"="LocalGPO"
"FileSysPath"="C:\\WINDOWS\\System32\\GroupPolicy\\Machine"
"DisplayName"="Stratégie de groupe locale"
"Extensions"="[{42B5FAAE-6536-11D2-AE5A-0000F87571E3}{40B6664F-4972-11D1-A7CA-0000F87571E3}]"
"Link"="Local"
"GPOName"="Stratégie de groupe locale"
"GPOLink"=dword:00000001
"lParam"=dword:00000000
 


Sur une autre machine fraichement installer, je recopie le dossier GroupPolicy et applique les clé de registres.



Résultat : a l'extinction de la machine le script.bat est executé.

Le probleme est qu'il est executer en tant qu'utilisateur AUTHORITE NT\SYSTEM ce qui me pose probleme pour la suite de l'execution de mon script qui aurait besoin d'etre "administrateur" pour installer/metre a jour des applications sur le postes.



J'ai test plusieur utlitaire telle que runas , xrunas , SuperExec , Psexec , et quelques auttre script vbs mais impossible d'arrive a passer de system a adminstrateur.



Si quelqu'un a une piste ? Merci pour votre aide
Répondre