c# - 应用程序说网络驱动器不存在,但使用 OpenFileDialog 找到

标签 c# windows-7 openfiledialog network-drive

我制作了一个在 Win7-PC 上运行的小应用程序。它所做的就是在凌晨 1:00 检查网络驱动器的内容(并将其与本地硬盘驱动器上的文件夹进行比较),如果有差异,则将差异复制到该文件夹.

问题是,有时找不到网络驱动器。

当应用程序启动时,使用应用程序上启动 OpenFileDialog 的按钮找到网络驱动器,并将生成的驱动器号放入按钮旁边的文本框中。从那时起,它应该自己运行。 PC 永远不会关闭。

当它说找不到网络驱动器时,我可以手动按下同一个应用程序上的按钮,在 OpenFileDialog 中选择驱动器(驱动器号永远不会改变),应用程序将在几个小时后完美运行天。然后问题又出现了。

问题是:为什么我的app可以通过OpenFileDialog访问网络驱动器,而我的app不能访问?

我的应用程序使用此函数(使用“Y:\”调用)启动复制过程以确定驱动器是否存在:

    public bool fn_drive_exists(string par_string)
    {
        DirectoryInfo di_dir = new DirectoryInfo(par_string);
        if (di_dir.Exists)
        {
            return true;
        }

        return false;
    }

...有时它会返回 False,直到我使用 OpenFileDialog 将其“唤醒”。

OpenFileDialog 有哪些功能,而我的应用没有?

最佳答案

根据这个SO post ,如果您使用 UNC 路径而不是映射的网络驱动器,问题应该消失。

关于c# - 应用程序说网络驱动器不存在,但使用 OpenFileDialog 找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11356021/

相关文章:

c# - .Include 方法是否命中 LINQ 中的数据库?

c# - 如何连接到 Windows 7 音频

c# - 以编程方式双击系统托盘图标 Windows xp/7

jquery - 在 IE10/Win7 上运行 jQuery 崩溃

c++ - 获取普通文件对话框中当前选中文件的真实名称?

vb.net - 如何在vb.net中使用打开文件对话框指定路径?

c# - 在 PowerShell 中隐式转换为 C# 中定义的结构的 bool 失败

c# - 如何使用自定义宽高比统一构建项目?

c# - 查询中带有 URL 的 WCF 数据服务

c++ - 如何使用 IFileOpenDialog 打开 *modal* 文件对话框?