Я сделал небольшое приложение, которое работает на Win7-PC. Все, что нужно, - проверить содержимое сетевого диска в час ночи (и сравнить его с папкой на локальном жестком диске), а если есть различия, скопируйте отличия в эту папку.
Проблема в том, что иногда он не может найти сетевой диск.
Когда приложение запустится, сетевой диск будет найден с помощью кнопки в приложении, которая запустит 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, что у моего приложения нет?