我正在卸载这样的服务:
using (AssemblyInstaller installer = new AssemblyInstaller(serviceFileName, new String[] { }))
{
installer.UseNewContext = true;
installer.Uninstall(null);
}
这工作正常,但后来我尝试做一个 Directory.Delete,它抛出一个异常,说访问服务的可执行文件被拒绝。然而,紧接着,我可以在 Windows 资源管理器中手动删除该文件。
我的应用程序正在由请求管理员访问权限的安装程序运行,因此我假设它有权访问该文件。实际上,它会删除该目录中的所有其他文件,只是无法获取该目录。我还检查了该文件不是只读的。
任何想法为什么我不能删除这个文件?