Problemas al crear el servicio con sc.exe

15

Tengo este comando para crear un servicio:

sc create svnserve binpath="\"C:\Program Files (x86)\Subversion\bin\svnserve.exe\" --service --root C:\SVNRoot" displayname="Subversion" depend=tcpip start=auto obj="NT AUTHORITY\LocalService"

Desafortunadamente, parece no funcionar, aunque la sintaxis es correcta. Cuando lo ejecuto, recibo las instrucciones de uso (que supongo que es una forma de decirme que he proporcionado argumentos incorrectos, aunque no tengo idea de qué argumento incorrecto podría haber proporcionado).

¿Alguien puede ayudarme a salir de mi dificultad? ¡Gracias!

Tola Odejayi
fuente

Respuestas:

26

Su sintaxis es realmente incorrecta, pero se le perdonará por perderla.

Del texto de ayuda para sc create:

NOTE: The option name includes the equal sign.

Lo que no es inmediatamente obvio de esto es que las opciones deben especificarse con un espacio entre el nombre de la opción y el valor.

Incorrecto:

displayname="Subversion"

Correcto (observe el espacio después =):

displayname= "Subversion"

Su comando debería funcionar con el formato correcto, es decir:

sc create svnserve binpath= "\"C:\Program Files (x86)\Subversion\bin\svnserve.exe\" --service --root C:\SVNRoot" displayname= "Subversion" depend= tcpip start= auto obj= "NT AUTHORITY\LocalService"
ThatGraemeGuy
fuente
Votó su respuesta como la respuesta, porque fue más detallada. ¡Gracias!
Tola Odejayi
Esto ya no parece ser un problema en Windows 10. Parece que funciona para mí, si alguien más quiere verificar esto.
Joel McBeth
¡Salvaste mi día!
QtRoS
15

necesitas espacios después =

displayname = "Subversion Server" depend = Tcpip start = auto

evg345
fuente
+1: la sintaxis sc confunde a los usuarios nuevos con la necesidad de espacios después de los argumentos.
Evan Anderson
2
Lo he estado usando durante años y todavía me hace tropezar ocasionalmente. :-(
ThatGraemeGuy