【问题标题】:Running an application as Windows Service requires Administrator rights or not?将应用程序作为 Windows 服务运行是否需要管理员权限?
【发布时间】:2014-01-17 07:30:32
【问题描述】:

我在 Visual C++ 2010 中创建了一个 Windows 服务。它基本上是查找一个文件,如果存在则删除它。

现在,如果我以管理员身份运行该应用程序,则该文件已成功从该位置删除。但是如果我将其安装为 Windows 服务并运行该服务,则该文件会被检测到但不会被删除,即使该服务正在本地系统上运行。

现在我的问题是 Windows 服务是否需要最高权限或以最高权限运行?

【问题讨论】:

  • 权限可能不是问题。添加一些日志记录,以便您可以查看调用 DeleteFile 时返回的错误代码。

标签: c++ windows service


【解决方案1】:

不,Windows 服务可以使用任何帐户运行,因此几乎没有任何权限。

当然,如果你想删除一个文件,NTFS 会检查它的访问控制列表 (ACL)。当管理员确实具有删除权限但本地系统没有删除权限时,您将看到观察到的行为。但重要的是文件 ACL,服务并不特殊。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-04
    • 2014-05-31
    • 1970-01-01
    • 1970-01-01
    • 2021-09-22
    • 2016-02-24
    • 2012-09-09
    相关资源
    最近更新 更多