如何从 Windows 服务访问映射目录

Edd*_*Edd 6 windows services windows-server-2008 unc windows-services

根据经验,Windows 服务无法访问映射驱动器,您必须改用 UNC 路径。

我相信有办法解决这个问题,以便 Windows 服务可以访问映射驱动器,但我在任何地方都找不到它。

我的具体情况是我在 Windows 2008 服务器上运行 Tomcat7。

Edd*_*Edd 15

使用映射目录或 UNC 路径的替代方法是使用符号链接。

NTFS 符号链接(符号链接)可以引用 UNC 路径,但与快捷方式的不同之处在于没有重定向到请求的位置。如果您创建如下符号链接...

mklink /D C:\myLink \\127.0.0.1\c$
Run Code Online (Sandbox Code Playgroud)

...然后,当您打开C:\myLink所在文件夹的地址时,您将使用C:\myLink而非\\127.0.0.1\c$,如果 myLink 是快捷方式而不是符号链接,您将获得该地址。如果您的应用程序与 UNC 路径存在兼容性问题,这很重要。

此外,符号链接存在于文件系统中,不需要在登录后重新创建,因为您的平均映射驱动器需要(通常是自动化的),因此可用于 Windows 服务。

  • 根据我的经验,该命令仅适用于 Windows 命令提示符而不适用于 Power Shell (3认同)