1

我创建了一个 Windows 服务,它基本上是一个文件观察器,除非用户登录到它所在的机器,否则它不会运行。该服务在 Windows Server 2003 机器上运行。它旨在根据文件名中的关键字将放在一个目录中的文件移动到不同的目录中,但是在我登录之前没有文件移动,然后所有文件一次移动。

4

3 回答 3

2

您可能必须将服务设置为以特定用户身份登录,尝试进入服务,双击服务并选择“以帐户登录”,然后提供您的帐户详细信息(域\用户名和密码)。

LocalService 帐户具有广泛的权限,但可能缺乏对特定用户文件/文件夹的权限。您也可以尝试向 LocalService 帐户特别授予文件权限。但是,我会先尝试“登录为”技巧,因为这是一个 1 分钟的工作。如果它有效,您可以创建一个特定帐户来运行该服务,或者授予 LocalSystem 权限。

顺便说一句:如果是网络文件,您可以尝试使用 NetworkedService 帐户。

于 2008-12-11T14:49:48.347 回答
0

您的服务必须存在一些设置问题。Windows Server 在没有用户登录的情况下运行应用程序没有问题(否则,计划任务的用处会少很多)。

你是如何安装服务的?

于 2008-12-11T14:43:08.890 回答
0

需要澄清几点:

  • 你提到

除非用户登录到机器上否则不会运行的文件观察器

这是如何实施的?一般情况下,服务会在机器启动时自动启动,因为每个windows服务运行在不同的windows station下,具有独立的安全上下文

  • 你还提到

但是在我登录之前没有任何文件移动

这是否与第一点不矛盾,因为这是它已经实施的目的?[我假设上述观点已经实施]

  • 服务是否配置为在特殊帐户下运行?
  • 服务器是否已配置为需要特殊权限才能在文件系统上移动文件?
于 2008-12-11T14:49:10.203 回答