我在Visual C ++ 2010中创建了一个Windows服务。它基本上查找了一个文件,如果存在则删除它。
现在,如果我以管理员身份运行该应用程序,则该文件已从该位置成功删除。但如果我将其安装为Windows服务并运行该服务,则会检测到该文件但未删除,即使该服务正在本地系统上运行。
现在我的问题是Windows服务是否需要最高权限,还是以最高权限运行?
答案 0 :(得分:2)
不,Windows服务可以使用任何帐户运行,因此几乎没有任何权限。
当然,如果要删除文件,NTFS将检查其访问控制列表(ACL)。当管理员确实具有删除权限但本地系统没有删除权限时,您将拥有观察到的行为。但重要的是文件ACL,服务并不特殊。