sc.exe create

Crée une sous-clé et des entrées pour un service dans le Registre et dans la base de données du Gestionnaire de contrôle des services.

Syntaxe

sc.exe [<servername>] create [<servicename>] [type= {own | share | kernel | filesys | rec | interact type= {own | share}}] [start= {boot | system | auto | demand | disabled | delayed-auto}] [error= {normal | severe | critical | ignore}] [binpath= <binarypathname>] [group= <loadordergroup>] [tag= {yes | no}] [depend= <dependencies>] [obj= {<accountname> | <objectname>}] [displayname= <displayname>] [password= <password>]

Paramètres

Paramètre Description
<servername> Spécifie le nom du serveur distant sur lequel se trouve le service. Le nom doit utiliser le format UNC (Universal Naming Convention) (par exemple \monserveur). Pour exécuter SC.exe localement, n’utilisez pas ce paramètre.
<servicename> Spécifie le nom du service retourné par l’opération getkeyname.
type= {own | share | kernel | filesys | rec | interact type= {own | share}} Spécifie le type de service. Ces options sont les suivantes :
  • own : spécifie un service qui s’exécute dans son propre processus. Il ne partage pas un fichier exécutable avec d’autres services. Il s’agit de la valeur par défaut.
  • share : spécifie un service qui s’exécute en tant que processus partagé. Il partage un fichier exécutable avec d’autres services.
  • kernel : spécifie un pilote.
  • filesys : spécifie un pilote de système de fichiers.
  • rec : spécifie un pilote reconnu par le système de fichiers qui identifie les systèmes de fichiers utilisés sur l’ordinateur.
  • interact : spécifie un service qui peut interagir avec le bureau, en recevant des entrées des utilisateurs. Les services interactifs doivent être exécutés sous le compte LocalSystem. Ce type doit être utilisé conjointement avec type= own ou type= share (par exemple type= interacttype= own). L’utilisation de type= interact seul génère une erreur.
start= {boot | system | auto | demand | disabled | delayed-auto} Spécifie le type de démarrage pour le service. Ces options sont les suivantes :
  • boot : spécifie un pilote de périphérique chargé par le chargeur de démarrage.
  • system : spécifie un pilote de périphérique démarré lors de l’initialisation du noyau.
  • auto : spécifie un service qui démarre automatiquement chaque fois que l’ordinateur est redémarré et s’exécute même si personne ne se connecte à l’ordinateur.
  • demand : spécifie un service qui doit être démarré manuellement. C’est la valeur par défaut si start= n’est pas spécifié.
  • disabled : spécifie un service qui ne peut pas être démarré. Pour démarrer un service désactivé, remplacez le type de démarrage par une autre valeur.
  • delayed-auto : spécifie un service qui démarre automatiquement peu de temps après le démarrage d’autres services automatiques.
error= {normal | severe | critical | ignore} Spécifie la gravité de l’erreur si le service échoue à démarrer quand l’ordinateur est démarré. Ces options sont les suivantes :
  • normal : spécifie que l’erreur est journalisée et qu’une boîte de message s’affiche, informant l’utilisateur qu’un service n’a pas pu démarrer. Le démarrage se poursuit. Il s'agit du paramètre par défaut.
  • severe : spécifie que l’erreur est journalisée (si possible). L’ordinateur tente de redémarrer avec la dernière bonne configuration connue. Ceci peut entraîner le redémarrage de l’ordinateur, mais le service peut néanmoins être toujours dans l’impossibilité de s’exécuter.
  • critical : spécifie que l’erreur est journalisée (si possible). L’ordinateur tente de redémarrer avec la dernière bonne configuration connue. Si la dernière bonne configuration connue échoue, le démarrage échoue également et le processus de démarrage s’arrête avec une erreur d’arrêt.
  • ignore : spécifie que l’erreur est journalisée et que le démarrage continue. Aucune notification n’est envoyée à l’utilisateur et l’erreur est enregistrée dans le journal des événements.
binpath= <binarypathname> Spécifie un chemin vers le fichier binaire du service. Il n’y a pas de valeur par défaut pour binpath= et cette chaîne doit être fournie.
group= <loadordergroup> Spécifie le nom du groupe dont ce service est membre. La liste des groupes est stockée dans le Registre, dans la sous-clé HKLM\System\CurrentControlSet\Control\ServiceGroupOrder. La valeur par défaut est null.
tag= {yes | no} Spécifie s’il faut ou non obtenir un TagID de l’appel à CreateService. Les étiquettes sont utilisées seulement pour les pilotes de démarrage et de démarrage du système.
depend= <dependencies> Spécifie les noms des services ou des groupes qui doivent démarrer avant ce service. Les noms sont séparés par des barres obliques (/).
obj= {<accountname> | <objectname>} Spécifie le nom d’un compte dans lequel un service s’exécutera, ou spécifie le nom de l’objet pilote Windows dans lequel le pilote s’exécutera. La valeur par défaut est LocalSystem.
displayname= <displayname> Spécifie un nom convivial pour identifier le service dans les programmes avec interface utilisateur. Par exemple, le nom de la sous-clé d’un service particulier est wuauserv, qui a le nom d’affichage plus convivial « Mises à jour automatiques ».
password= <password> Spécifie un mot de passe. Ceci est obligatoire si un compte autre que le compte LocalSystem est utilisé.
/? Affiche l'aide à l'invite de commandes.

Notes

  • Chaque option (paramètre) de ligne de commande doit inclure le signe égal dans le nom de l’option.

  • Un espace est nécessaire entre une option et sa valeur (par exemple type= own. Si l’espace est omis, l’opération échoue.

Exemples

Pour créer et inscrire un nouveau chemin binaire pour le service NewService, tapez :

sc.exe \\myserver create NewService binpath= c:\windows\system32\NewServ.exe
sc.exe create NewService binpath= c:\windows\system32\NewServ.exe type= share start= auto depend= +TDI NetBIOS

Pour en savoir plus sur la commande sc.exe, consultez Commandes SC.