.NET 4.x Вылеты программы без exception - C#

Узнай цену своей работы

Формулировка задачи:

Привет всем. Наблюдаю проблемку при работе написанной програмки. Программа считывает каждый файл в указанной папке и записывает в другую папку в виде xml файлов данные. На всех пк все нормально, на своем пк, где писал, обнаружился следующего рода баг. Программа записывает какое-то количество xml данных, после чего напросто вылетает без каких-либо ошибок и исключений. Отловил проблемный метод коде. Вот он:
Листинг программы
  1. public void writexml(string pathxml, string namexml, string varxml)
  2. {
  3. XmlTextWriter writer = new XmlTextWriter(pathxml, System.Text.Encoding.UTF8);//Cоздание writer
  4. writer.Formatting = Formatting.Indented;
  5. writer.Indentation = 2;
  6. writer.WriteStartDocument();
  7. writer.WriteStartElement("server");
  8. writer.WriteElementString(namexml, varxml);
  9. writer.WriteEndElement();//закрываем тег department
  10. writer.WriteEndDocument();
  11. MessageBox.Show("11111");
  12. try {
  13. MessageBox.Show(pathxml + " " + namexml + " " + varxml);
  14. writer.Flush();
  15. writer.Close();
  16. }
  17. catch (Exception ex)
  18. {
  19. MessageBox.Show("Ошибка: " + ex.ToString());
  20. }
  21. MessageBox.Show("222222");
  22. }
Проблема возникает непосредственно на выполнении кода
Листинг программы
  1. writer.Close();
Причем с определенным файлом, а не всеми. Поступаемые данные в функцию:
Листинг программы
  1. writexml(D:\\2\\CRC32\\@Zos_altislife_2\\addons\\45KO_SO_Equipment.pbo", "name", Hash_File);
  2. writexml(D:\\2\\CRC32\\@Zos_altislife_2\\addons\\45KO_SO_Equipment.pbo.ZoneOfSurvival.bisign", "name", Hash_File);
  3. writexml(D:\\2\\CRC32\\@Zos_altislife_2\\addons\\45KO_SO_Equipment_BluF.pbo", "name", Hash_File);
  4. writexml(D:\\2\\CRC32\\@Zos_altislife_2\\addons\\45KO_SO_Equipment_BluF.pbo.ZoneOfSurvival.bisign", "name", Hash_File);
Под Hash_File идет обычно значение в виде fr44g5g8tf. У каждого файла оно свое. Если кладу каждый из этих файлов отдельно, нет такого. А вот вместе 4 - есть. И да, файлы нормально записываются, даже последний. Никаких исключений, ошибок, ничего не вылетает. Права на папки проверял, на запуск тоже. Все имеется.
Причем, что интересно, проблема иногда (редко) сама пропадает, и все работает. А потом сама появляется снова. При этом в системе ничего не меняется. только в браузере и скайпе сижу все это время.

Решение задачи: «.NET 4.x Вылеты программы без exception»

textual
Листинг программы
  1. public void writexml(string pathxml, string namexml, string varxml)
  2. {
  3.     try
  4.     {
  5.         using (XmlTextWriter writer = new XmlTextWriter(pathxml))
  6.         {
  7.             writer.Formatting = Formatting.Indented;
  8.             writer.Indentation = 2;
  9.  
  10.             writer.WriteStartDocument();
  11.             writer.WriteStartElement("server");
  12.             writer.WriteElementString(namexml, varxml);
  13.             writer.WriteEndElement();
  14.             writer.WriteEndDocument();
  15.         }
  16.     }
  17.     catch (Exception ex)
  18.     {
  19.          System.Diagnostics.Debugger.Break();
  20.     }
  21. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.917 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы