我有一个执行.bat
文件的Windows服务。该.bat
文件执行一些读取某些文件信息的Sava代码。我需要访问的文件不在服务运行的同一台计算机上。所以我应该使用像G:\
这样的映射来访问它们。使用Windows服务在Windows上远程访问文件
即使我在运行服务时存在G:\
上的文件,文件exists()
和文件canRead()
始终返回false。
如果手动执行.bat
,一切正常,但我需要使用服务执行它。
该服务正在与有权读取此G:\
映射上的所有文件的用户一起运行。
有没有人有什么可能是错的线索?为什么在作为Windows服务运行时无法访问这些远程文件?
有问题的操作系统是Windows XP
。
尝试执行“\\ servername \ c $ \ path_to_bat_file”,其中c是远程计算机上的驱动器,当然必须替换为bat文件所在驱动器的名称(无映射) 。当然,这是假定所有访问权利都已到位。 servername是您用来映射驱动器的东西。 – Thomas