/// <summary> /// Выполняет проверку валидности XML, существование указанных путей, для корректной работы FSW. /// </summary> /// <param name="Directories"></param> /// <param name="path"></param> private void Loads(Directories Directories, string path) { XmlSerializer deserializer = new XmlSerializer(typeof(Directories)); try { using (TextReader textReader = new StreamReader(path)) { Directories = (Directories)deserializer.Deserialize(textReader); for (int j = 0; j < Directories.DirectLinks.Length; j++) { if (Directory.Exists(Directories.DirectLinks[j])) { link = Directories.DirectLinks[j]; vs.Add(link); watcher = new FileSystemWatcher(link); watchers.Add(watcher); listBox1.Items.Add(link); } else { if (MessageBox.Show("Указанный путь не существует. Пропустить?", "Ошибка!", MessageBoxButtons.YesNo) == DialogResult.Yes) { continue; } else { //link = Directories.DirectLinks[j]; //listBox1.Items.Add(link); Close(); } } } } } catch { if (MessageBox.Show("Файл не найден или имеет недопустимую структуру. Создать новый файл?", "Сообщение", MessageBoxButtons.YesNo) == DialogResult.Yes) { Exit(Directories, path); } else { Close(); } } }