完全にアンインストールしたい古いサービスがいくつかあります。これどうやってするの?
14 に答える
次のようにSCコマンドを使用します (この投稿のコマンドを実行するには、コマンド プロンプトを使用する必要があります)。
SC STOP shortservicename
SC DELETE shortservicename
注:コマンド プロンプトは、管理者としてログインするだけでなく、管理者権限を持つ管理者として実行する必要があります。サービスを停止または削除するために必要なアクセス権がないという上記のエラーが発生した場合は、管理者としてコマンド プロンプトを実行します。これを行うには、スタート メニューでコマンド プロンプトを検索し、右クリックして [管理者として実行] を選択します。PowerShell ユーザーへの注意: sc
は にエイリアスされていset-content
ます。したがってsc delete service
、実際にdelete
は contentという名前のファイルが作成されますservice
。Powershell でこれを行うには、sc.exe delete service
代わりに使用します
サービスの短いサービス名を見つける必要がある場合は、次のコマンドを使用して、サービスとそのステータスのリストを含むテキスト ファイルを生成します。
SC QUERY state= all >"C:\Service List.txt"
より簡潔なリストを表示するには、次のコマンドを実行します。
SC QUERY state= all | FIND "_NAME"
次のように、短いサービス名が表示名のすぐ上に表示されます。
SERVICE_NAME: MyService
DISPLAY_NAME: My Special Service
したがって、そのサービスを削除するには:
SC STOP MyService
SC DELETE MyService
[スタート] | [開始] をクリックします。実行regedit
して、Open: 行に入力します。[OK] をクリックします。
案内するHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
左ペインを下にスクロールし、サービス名を見つけて右クリックし、[削除] を選択します。
システムを再起動します。
services.mscまたは ([スタート] > [コントロール パネル] > [管理ツール] > [サービス]) を使用して、問題のサービスを見つけます。ダブルクリックして、サービス名と実行可能ファイルへのパスを表示します。
サービスの所有者の手がかりとして exe のバージョン情報を確認し、可能であれば、[プログラムの追加と削除] を使用してクリーン アンインストールを実行します。
それができない場合は、コマンド プロンプトから:
sc stop servicexyz
sc delete servicexyz
再起動は必要ありません。
SC DELETE "service name"
管理者として cmd でコマンドを実行しないと、次のエラーが発生します:-
openservice failed 5 アクセスが拒否されました
2つの異なる方法でそれを行うことができます
レジストリから Windows サービスを削除する
正しいパスがわかっている場合、レジストリからサービスを削除するのは非常に簡単です。これが私がそれをした方法です:
RegeditまたはRegedt32 を実行します。
レジストリ エントリ「HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services」に移動します。
削除するサービスを探して削除します。キーを見て、サービスが使用していたファイルを確認し、それらを削除することもできます (必要な場合)。
コマンド ウィンドウから Windows サービスを削除する
または、コマンド プロンプトを使用して、次のコマンドを使用してサービスを削除することもできます。
sc 削除
次のコマンドを使用してサービスを作成することもできます
sc create "MorganTechService" binpath= "C:\Program Files\MorganTechSPace\myservice.exe"
注: サービス マネージャーでリストを更新するには、システムを再起動する必要がある場合があります。
Windows Vista 以降を使用している場合は、管理者としてコマンド プロンプトからこれを実行してください。
sc delete [your service name as shown in service.msc e.g moneytransfer]
例えば:sc delete moneytransfer
フォルダを削除するC:\Program Files\BBRTL\moneytransfer\
moneytransfer レジストリ キーを見つけて削除します。
HKEY_CLASSES_ROOT\Installer\Products\
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\EventLog\
HKEY_LOCAL_MACHINE\System\CurrentControlSet002\Services\
HKEY_LOCAL_MACHINE\System\CurrentControlSet002\Services\EventLog\
HKEY_LOCAL_MACHINE\Software\Classes\Installer\Assemblies\ [remove .exe references]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\Folders
これらの手順は、Windows XP、Windows 7、Windows Vista、Windows Server 2003、および Windows Server 2008 でテストされています。
.NET で作成されたサービスの場合は、C:\Windows\Microsoft.NET\Framework64\v2.0.50727 のような .net フレームワーク フォルダーにある /u スイッチを使用して installutil.exe を使用できます。
以下は、私に渡された vbs スクリプトです。
Set servicelist = GetObject("winmgmts:").InstancesOf ("Win32_Service")
for each service in servicelist
sname = lcase(service.name)
If sname = "NameOfMyService" Then
msgbox(sname)
service.delete ' the internal name of your service
end if
next
sc 削除名
サービスを削除する前に、依存関係を確認する必要があります。
あなたはそれをチェックすることができます:
サービス名を開いservices.msc
て見つけ、「依存関係」タブに切り替えます。
ソース: http://www.sysadmit.com/2016/03/windows-eliminar-un-servicio.html
私が作成したサービスは、[コントロール パネル] > [プログラムと機能] でアンインストールする必要がありました