Приложение говорит, что сетевой диск не существует, но найден с помощью OpenFileDialog

Я сделал небольшое приложение, которое работает на ПК с Win7 -. Все, что он делает, это проверяет содержимое сетевого диска в 1 :00 часов утра (и сравнивает его с папкой на локальном жестком диске ), и если есть различия, скопируйте различия в эту папку.

Проблема в том, что иногда он не может найти сетевой диск.

Когда приложение запускается, сетевой диск обнаруживается с помощью кнопки в приложении, которая запускает OpenFileDialog, и полученная буква диска помещается в текстовое поле рядом с кнопкой. С этого момента он должен работать сам по себе. ПК никогда не выключается.

Когда он говорит, что сетевой диск не может быть найден, я могу вручную нажать кнопку в том же приложении, выбрать диск в OpenFileDialog (, буква диска никогда не меняется ), и приложение будет работать безупречно через пару дней. Затем проблема возникает снова.

Вопрос: :Почему к сетевому диску можно получить доступ через OpenFileDialog в моем приложении, а в моем приложении нельзя?

Мое приложение запускает процесс копирования -, используя эту функцию (, вызываемую с помощью «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, чего не делает мое приложение?

11
задан Mogsdad 22 July 2013 в 15:43
поделиться