C# 会话打开前,通过UNC路径访问windows共享

C# 会话打开前,通过UNC路径访问windows共享,c#,windows-services,share,unc,network-share,C#,Windows Services,Share,Unc,Network Share,我必须在用户登录之前启动windows服务。这也意味着这项服务必须有自己的用户名/密码。那么,如何在不被登录的情况下远程打开网络共享 我在windows域中,目标是使用一些配置的凭据来访问我需要的远程文件 你有什么想法吗?我就是找不到任何可以轻松访问服务器的东西 编辑:很抱歉,我犯了一个错误,客户端计算机不在域中,服务器是:(通常您要做的是将服务设置为在命名用户(域)帐户下运行,并授予该用户访问远程共享的权限。然后像访问任何其他共享上的文件一样访问该共享上的文件,即 File.ReadAllTe

我必须在用户登录之前启动windows服务。这也意味着这项服务必须有自己的用户名/密码。那么,如何在不被登录的情况下远程打开网络共享

我在windows域中,目标是使用一些配置的凭据来访问我需要的远程文件

你有什么想法吗?我就是找不到任何可以轻松访问服务器的东西


编辑:很抱歉,我犯了一个错误,客户端计算机不在域中,服务器是:(

通常您要做的是将服务设置为在命名用户(域)帐户下运行,并授予该用户访问远程共享的权限。然后像访问任何其他共享上的文件一样访问该共享上的文件,即

File.ReadAllText(@"\\SomeMachine\SomeShare\Something.txt");

通常,您要做的是将服务设置为在命名用户(域)帐户下运行,并授予该用户对远程共享的访问权限。然后像访问任何其他帐户一样访问该共享上的文件

File.ReadAllText(@"\\SomeMachine\SomeShare\Something.txt");

如果您不能以相关用户的身份运行服务,那么可以通过p/Invokes代码来完成


如果您不能以所讨论的用户身份运行服务,您可以通过p/Invokes代码来完成


请参阅此答案:了解如何在远程共享上进行身份验证。您是否安装了具有网络依赖关系的服务?您使用的是域帐户的用户名/密码?如果这两个答案都是“是”,则您应该能够使用unc路径访问网络共享。请参阅此答案:了解如何在远程共享上进行身份验证共享。您是否安装了具有网络依赖关系的服务?您使用的用户名/密码是域帐户吗?如果这两个答案都是“是”,则您应该能够使用unc路径访问网络共享。事实上,我犯了一个错误,执行服务的计算机不是域成员,而是服务器共享是。因此很遗憾,我无法使用服务的用户,我必须模拟它。另一个选项是将用户帐户添加到具有共享的计算机(非域用户帐户)-授予他们访问共享的权限,将另一个用户添加到运行服务的计算机(相同的用户名和密码)。然后将服务设置为在该用户帐户下运行。如果这样做,则对共享的身份验证应仅“起作用”事实上,我犯了一个错误,执行服务的计算机不是域成员,但共享的服务器是域成员。因此,很遗憾,我无法使用该服务的用户,我必须模拟它。另一个选项是向计算机添加一个用户帐户,其中包含共享(非域用户帐户)-授予他们访问共享的权限,将另一个用户添加到正在运行服务的计算机上(相同的用户名和密码)。然后将服务设置为在该用户帐户下运行。如果这样做,则共享的身份验证应仅“起作用”