2008-11-21 5 views

Odpowiedz

61

to działa:

sc.exe config "[servicename]" obj= "[.\username]" password= "[password]" 

której każdy z [nawiasach] elementy są zastępowane prawdziwych argumentów. (Keep cytaty, ale nie zachować wsporniki.)

Wystarczy pamiętać, że:

  • Odstępy w powyższym przykładzie sprawach. obj= "foo" jest poprawne; obj="foo" nie jest.
  • "." jest aliasem do komputera lokalnego, możesz tam określić domenę (lub lokalną nazwę komputera), jeśli chcesz.
  • Hasła nie są sprawdzane, dopóki usługa nie zostanie uruchomiona.
  • Proszę podać swoje parametry, jak wyżej. Czasami możesz przejść bez cytatów, ale powodzenia.
+6

Andrew, działał z niewielkimi zmianami. obj = "domena \ nazwa_użytkownika" obj = "Lokalny system" Musimy mieć przestrzeń pomiędzy postacią = i nazwą użytkownika. userid's są zatwierdzone, co jest dobre. Musimy mieć puste miejsce pomiędzy hasłem = a faktycznym hasłem. hasło nie jest sprawdzane, to jest trochę bólu. aby ponownie ustawić usługę na LocalSystem, która ma hasło, podamy trochę fałszywego hasła, aby działało. jak sc config "servicename" obj = "LocalSystem" hasło = "nieużywane" –

+0

Kiedy próbowałem uruchomić to polecenie w PowerShellu, otrzymałem następujące błędy: "Set-Content: Nie można znaleźć parametru pozycyjnego, który akceptuje argument" obj = ". " Pracowałem nad tym przy użyciu CMD: 'cmd.exe -e" sc config Usługa obj = hasło użytkownika = pass "' – Jeremy

+1

To też nie działa. Usługa SC config * service * obj = "* nazwa usługi *" hasło = "* hasło *" nieprawidłowo ustawia hasło - w ten sposób usługa nie może zostać uruchomiona. – Grayson

8

W PowerShell, polecenie "sc" jest aliasem dla polecenia cmdlet Set-Content. Można to obejść stosując następującą składnię:

sc.exe config Service obj= user password= pass 

Specyfying rozszerzenie .exe, PowerShell omija odnośnika aliasu.

HTH

+0

To nie działa dla mnie. Zastanawiam się, czy ta metoda obsługuje inne znaki niż alfanumeryczne. – Maverick