访问远程机器文件时出现Windows服务问题

时间:2011-03-01 06:24:13

标签: c# .net windows-services

我创建了一个从远程计算机访问文件的Windows服务。但它在日志文件中出现错误,文件不存在。当我部署它然后只有它给出错误,否则当我从Visual Studio 2005调试然后它工作正常。  我尝试从“登录”选项卡更改“服务属性”。将登录作为:然后选择此帐户并提供远程计算机和密码的名称仍然无法正常工作。请帮帮我。

代码:

if (File.Exists(FileName))
{


}
else
{
  Log.append("File Not Exist Path=:" + FileName, 75);
}

错误:

  

文件不存在路径=:\ Computer-01 \ Trend Till_04Feb \ Trend Till_04Feb \ TREND \ 128.DBF

1 个答案:

答案 0 :(得分:0)

我假设您正在使用ServiceProcessInstaller和ServiceInstaller。

最重要的属性是ServiceProcessInstaller类中的Account。它指定运行服务的Windows帐户(安全上下文)。可以使用以下选项:

LocalService:Service将计算机的凭据提供给远程服务器。

LocalSystem:服务向远程服务器提供匿名凭据。

NetworkService:服务具有有限的本地权限,并将计算机的凭据提供给远程服务器。

用户:指定了本地或网络帐户。您可以通过属性指定必要的用户名和密码,也可以在安装期间键入它们。服务使用指定用户帐户的安全上下文。

提供以下三个选项以指定服务的启动方式。

手动: - 用户启动服务。

自动: - 系统启动时服务自动启动。

已禁用: - 该服务无法使用。

  1. 转到ServiceInstaller对象的属性,并将ServiceName和StartType设置为Automatic。

  2. 转到ServiceProcessInstaller的属性并将Account属性设置为LocalService。这会导致服务在本地服务帐户上运行。

  3. HTH