【发布时间】:2016-05-28 06:02:49
【问题描述】:
我的控制台应用程序检查网络驱动器上是否存在文件,并在文件不存在时记录一条消息。今天我将我的应用程序部署到了 QA 机器上,并且 File.Exists() 一直为确实存在的文件返回 false。我正在通过 Windows 任务调度程序运行该应用程序。当我从命令行运行它时,它似乎工作正常。但无论哪种方式,我现在都不相信它。有没有人看到这种行为或有任何见解?:
Using System.IO;
private static void Main()
{
var fileName = @"x:\folder\file1.txt"; //be a network share
If (!File.Exists(fileName)
{
LogMessage("File is not on disk.");
}
else
{
LogMessage("File is on disk.");
}
}
【问题讨论】:
-
驱动器号映射是每个用户的设置。因此,标准故障模式是使用错误的用户帐户运行计划任务。
-
我在我的帐户下运行了它,该帐户确实映射了该驱动器,但它仍然无法正常工作。你能解释一下“标准故障模式”以及为什么我必须使用 unc 路径(它解决了问题)。
标签: c# file-io scheduled-tasks console-application