2013-02-26 17 views
31

Desidero impostare le Opzioni di ripristino su un servizio Windows che sto installando su un Windows Server 2003. So che è possibile farlo manualmente, ma desidero impostare la configurazione di recupero quando installo il servizio.Utilizzo di SC per installare un servizio Windows e quindi impostare le proprietà di ripristino

Io uso di script SC per fare questo:

SC create MyService displayname= "MyService" binpath= "C:\Program Files\MyService\MyService.exe" start= auto 

SC failure MyService reset= 86400 actions= restart/1000/restart/1000/run/1000 

SC failure MyService command= "C:\Program Files\Myservice\MyService.exe" 

Il problema è quando il primo spazio bianco viene colpito, si interrompe il percorso e prende il resto del percorso come parametri di input:

screendump here

Quindi ... nella finestra di dialogo per il servizio le proprietà (run -> services.msc -> tasto destro del mouse MyService -> proprietà -> scheda Ripristino) seleziono "failur successiva es -> Esegui un programma

Come puoi vedere ho messo "" attorno al percorso nel comando. Come faccio a creare spazi bianchi nel percorso? So che posso solo fare un percorso senza spazi bianchi, ma non è questo il punto :-)

risposta

14

Questa sintassi sembra funzionare:

sc failure MyService command= "\"c:\program files\myservice\myservice.exe\"" 
+0

Ah, questo è tutto! Grazie mille. Ovviamente era il backslash. E grazie per aver visto oltre il sentiero di avvitamento. – user2110298

+0

Salvato la mia giornata! Grazie! –

+0

Come nota a margine interessante, il carattere di protezione nella riga di comando di Windows è '^'. Ma cosa aspettarsi quando * è necessario * avere uno spazio dopo '=' (sigh) – Matthieu

Problemi correlati