我编写了一个应该每天在固定时间运行的程序。当我第一次将它放在一起时,我无法到达映射的网络驱动器。解决方案是使用 UNC 路径而不是映射的驱动器号。这在生产中的任务管理器下运行了一个多月,但本周我开始收到有关驱动器不可用的错误。
当我从命令行运行脚本时,它运行良好,但是当我从任务计划程序手动运行它时,驱动器不可见。
以下是似乎相关或已在其他帖子中提出的任务设置:
- 用户:以具有完全访问权限的管理员用户身份运行
- “无论用户是否登录都运行”:检查
- “不存储密码...”:未选中
- “以最高权限运行”:已选中
- “配置”:“Windows Vista 或 Windows Server 2008”
我创建了一个最小的测试程序,运行结果相同:从命令行运行良好,从任务管理器运行时看不到驱动器。
require 'pp'
# I removed our IP address, but it was there in my tests
path = '\\\\NNN.NNN.NNN.NNN\\external data\\download'
File.open'test_out.txt', 'a' do |file|
file.puts '---running test at: ' + Time.now.to_s
file.puts '---dir listing of current (local) dir:'
file.puts Dir.entries('.')
file.puts '---dir listing of a network dir:'
file.puts Dir.entries(path)
end
我已向我们的 IT 部门询问他们所做的任何可能相关的更改,但他们一无所获。
任何帮助,将不胜感激