Exécutez une commande au démarrage de Windows (pas de connexion!)

11

Comment dites-vous à Windows d'exécuter une commande à chaque démarrage du système?

J'ai un grand nombre de serveurs sur lesquels je devrai exécuter une commande au démarrage du système qui effectue un changement de configuration non persistant.

Je peux exécuter la commande soit:

  • comme un exécutable avec plusieurs paramètres
  • comme un fichier batch qui appelle l'exécutable ci-dessus avec les paramètres appropriés

Comment puis-je demander à Windows d'exécuter ma commande à chaque démarrage, sans aucune sorte de connexion?

en relation: /programming//q/5899978/93180

MikeyB
la source

Réponses:

7

Définissez un script de démarrage avec le fichier BAT souhaité. Pour ce faire, via la stratégie de l'ordinateur local (pour les machines autonomes) ou via le GPO (si dans un domaine).

mfinni
la source
Comment fusionner par programmation mes modifications dans la stratégie informatique? Dois-je simplement créer une nouvelle clé sous HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts\Startupet y mettre les entrées appropriées?
MikeyB
Vous n'êtes généralement pas censé toucher manuellement quoi que ce soit dans les GPO, AFAIK. Et les options de script pour apporter des modifications spécifiques aux GPO manquent assez, d'après ce que je me souviens. Vous pouvez exporter, importer, créer / supprimer et lier des GPO à partir de scripts, mais je ne pense pas que vous puissiez apporter des modifications spécifiques à des GPO spécifiques (facilement). Quoi qu'il en soit, c'est une question différente, et probablement mieux adaptée à StackOverflow.
mfinni
Oui, j'écris ma question maintenant. Je devrai ajouter une entrée au GPO dans le cadre d'un programme d'installation.
MikeyB
En fait, maintenant que je sais quoi chercher: nsis.sourceforge.net/LGP_Startup/Shutdown_Script
MikeyB
16

Si vous devez définir le script de démarrage par programme, vous pouvez utiliser des tâches planifiées:

schtasks.exe /create /tn "Task Name" /ru SYSTEM /Sc ONSTART /tr
"C:\command2run.cmd"

Pour exécuter la tâche avec des autorisations élevées (Vista et versions ultérieures), ajoutez le paramètre /RL HIGHEST

abstrask
la source
4
Une solution beaucoup plus agréable (et plus simple à faire) !! Vous pouvez également utiliser l'interface graphique du Planificateur de tâches si vous préférez.
Jaans
6

Utiliser la stratégie de groupe pour exécuter un script de démarrage de l'ordinateur - cela s'exécutera au démarrage de la machine sans avoir besoin de quelqu'un pour se connecter

Jon Reeves
la source