我有一个打开文件的应用程序,该文件的路径设置为看起来像 UNC 路径,但删除了双斜杠和主机名,即
\\HOSTNAME\SHARED\FILE
它有
\SHARED\FILE
SHARED
这是指本地机器上的共享。
一切都运行正常,直到我将应用程序切换为作为 Windows 服务运行。现在应用程序无法打开该文件。
该服务作为对共享具有完全控制权的域帐户运行。
我想了解这种路径格式的含义,为什么 Windows 服务无法访问它引用的文件但控制台应用程序可以,以及如何在不改变路径的情况下使其工作(如果可能的话)。
答案1
它不再是 UNC 路径。它是常规本地路径,从\
与进程当前工作目录相同的驱动器的根目录 ( ) 开始。
也就是说,如果 cwd 是c:\windows
,则路径\users\anthony
将引用c:\users\anthony
。