我删除带有require
的Windows服务。
此后,我立即删除该服务拥有的文件(一个 exe 和几个 dll ),但由于这些文件仍处于锁定状态,所以无法删除。
我发现,如果我在服务删除和文件删除之间执行了3秒钟的睡眠(我不知道Windows在做什么3秒钟!),这是可行的。
有一些更优雅,更安全的解决方案吗?
可能没用的细节:我正在sc.exe delete <serviceName>
的{{1}}的{{1}}上运行它
答案 0 :(得分:0)
最初,您可以通过键入以下命令终止该服务的进程以释放其所拥有的资源;
> $ServicePID = (get-wmiobject win32_service | where { $_.name -eq 'service name'}).processID
> Stop-Process $ServicePID -Force
然后,您可以通过键入以下内容来删除该服务:
> sc.exe delete <serviceName>