Windows 2012 : les scripts d'ouverture de session ne se lancent pas

Pour les besoins d'un logiciel fourni par un éditeur, j'ai dû mettre en place, sur un serveur 2012 R2, un script d'ouverture de session afin de fixer des clés registres dans la ruche utilisateur (HKCU). Ce n'est pas une technique que j'affectionne particulièrement, mais parfois, on n'a guère le choix. J'ai donc écrit un petit script en Powershell. Mais, je me suis heurté à un problème de taille : le script d'ouverture de session ne s'exécute pas... Aie ! Lancé à la main, le script fonctionne sans problème, mais impossible de le lancer à l'ouverture de session. Bien évidemment, j'ai vérifié que les scripts PowerShell pouvaient être exécutes. Bon, en désespoir de cause, je me suis lancé dans un script .bat qui fusionne un fichier .reg dans le registre Windows. Mais là, pareil, impossible d'avoir une exécution de script à l'ouverture de session. Je me suis donc mis à rechercher sur le net la cause de ce "problème" et le moyen d'y remédier.

 

Un délai pour l’exécution des scripts d'ouverture de session

Lors de mes recherches, je suis tombé sur un site en anglais, où un utilisateur racontait qu'il avait eu le même problème que moi. Dans son billet, il était expliqué qu'à partir de Server 2012, Microsoft avait instauré par défaut un délai pour l'exécution des scripts à l'ouverture de session de 5 minutes. Oui 5 minutes ! Rien que cela. Du coup, j'ai compris pourquoi mes scripts ne s'exécutaient pas. J'attendais toujours une ou deux minutes, mais après, je pensais que c'était mort...

Ok, c'est pas nouveau, c'est une technique que je n'utilise pas souvent, sauf si c'est vraiment nécessaire.

Bon, il y a un délai pour l'exécution des scripts à l'ouverture de session, OK. Mais voyons maintenant comment modifier cela.

 

Modification du délai d'exécution des scripts d'ouverture de session

Le délai d'exécution des scripts d'ouverture de session peut être modifié via les stratégies. Ici, je ne vais modifier que les stratégies locales, puisque je n'ai pas besoin (ni l'envie) de propager ce réglage sur d'autres machines. Si vous êtes dans le même cas, suivez donc cette procédure :

Rendez vous dans l'éditeur de stratégies locales. Pour cela, appuyez sur la touche Windows, saisissez gpedit.msc et faites Entrée.

Une fois la fenêtre gpedit ouverte, rendez-vous dans :

Computer Configuration/Administrative Templates/System/Group Policy

ou si votre serveur est en français :

Configuration Ordinateur Modèles d'administration / Système / Stratégie de groupe

Localisez le stratégie intitulée Configurer le délai des scripts d'ouverture de session (Configure Logon Script Delay).

Localisez la stratégie nommée "Configurer le délai des scripts d'ouverture de session"

Double cliquez dessus et passez la sur Activé. Réglez ensuite le temps à 0. Validez et voilà. Le délai d'exécution sera supprimé. Vous pourrez à nouveau exécuter vos scripts à l'ouverture de session, sans attendre 5 minutes.

Activez la stratégie et définissez le délai à 0

Cette manipulation est valable à partir de Windows Server 2012 R2 et Windows 8.1 pour les stations de travail.

 

Steven

Ingénieur Systèmes passionné d'informatique et de High-Tech, Sandstorm a créé JusteGeek.fr en 2013. Il aime les geekeries en tout genre. "Si un produit s'allume c'est un bon point. S'il est connecté, c'est encore mieux !"

Vous aimerez aussi...

10 réponses

  1. Mathieu dit :

    Merci pour cette astuce qui me sauve alors que ça fait des heures que je cherche à comprendre pourquoi ce fichu script ne voulait pas se lancer !!!

  2. olive dit :

    Merci !
    pareil on commençait a s'arracher les cheveux 😉

  3. progressive auto insurance in buffalo ny dit :

    That's a skillful answer to a difficult question

  4. Fred dit :

    Bonjour, merci pour ce tuto mais l'item "Configurer le délai des scripts d'ouverture de session" n'apparait pas dans ma liste des stratégies de groupe...
    Avez-vous une idée ?
    Merci d'avance

  5. JP dit :

    Bonjour,
    Pareil... D'une part gpedit.msc n'était pas sur mon système Windows 8.1 (à jour), pas plus que "Configuration Ordinateur" d'ailleurs. J'ai récupéré un gpedit.msc mais parmi les options proposées dans Local Computer Policy / Administrative Templates / System / Group Policy je ne trouve pas "Configure Logon Script Delay".

  6. pbdl dit :

    Tous simplement MERCI.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.