web-dev-qa-db-ja.com

EXEなしでWindowsサービスを削除する

サーバー上でWindowsサービスを実行しています(可能であれば再起動したくない)。

このサービスのEXEは(リカバリを超えて)なくなり、コピーがありません(それ以降更新されたデバッグバージョンでした)。

それを実行したexeファイルなしでサービスリストからこのサービスを削除する方法はありますか?

20
Vaccano

やってみました sc <server> delete [service name]コマンドラインから?

より包括的な答えを見つけることができます ここ

26
Matt Davis

試してください:

sc delete servicename
14
barti_ddu

Sc delete servicenameは機能しますが、servicenameは「KeyName」であることに注意してください。

例えば。 Confluenceの場合、サービスのリストに「AtlassianConfluence」が表示されます。これは「説明的な」名前です。削除するには、次のように入力します。

sc GetKeyName "Atlassian Confluence"

私の場合、これはConfluence150114140910を返しました。だから私はそれからタイプした:

sc delete Confluence150114140910
9
Sam Kenny

autoruns tool (以前はsysinternalsによって、現在はMicrosoftサイトにあります)を使用すると、サービスとドライバー(レジストリ内のレコード)を管理できます。

レジスターも使用できます

  1. 開始>実行> regedit
  2. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servicesに移動します
  3. サービスのフォルダを削除します。
  4. システムを再起動します。
2
msjonathan

これはうまく機能します(admin cmdが必要です)

C:\Windows\system32>sc GetKeyName "SERVER"
[SC] GetServiceKeyName Êxito
Nome = SERVER

C:\Windows\system32>sc delete "SERVER"
[SC] DeleteService Êxito

C:\Windows\system32>sc delete "SERVER 2"
[SC] DeleteService Êxito
0
custume