Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не работает код на XP sp3 
:(
    Опции темы
DenWPF
Дата 19.3.2010, 23:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



на одной xp работает..а вот у клиента блин нет=((
фреймворк 3.0
пишет что нет 
p.Children[1] as ListBox; - 0 элемент, но это не так, как и визуально так и программно.
Код

 TextBlock t = sender as TextBlock;
                StackPanel p = t.Parent as StackPanel;
                ListBox sublist = p.Children[1] as ListBox;
                StackPanel sublist2 = p.Children[2] as StackPanel;
                if (sublist.Visibility == Visibility.Collapsed)
                {
                    sublist.Visibility = Visibility.Visible;
                    sublist2.Visibility = Visibility.Visible;
                }
                else
                {
                    sublist.Visibility = Visibility.Collapsed;
                    sublist2.Visibility = Visibility.Collapsed;
                }

PM MAIL   Вверх
DenWPF
Дата 21.3.2010, 01:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



не понятным способом это решили.

но вот трабл теперь другой, почему то из программы в некоторых случаях не сохраняет в хмл, а в не которых сохраняет, хотя используется одна и таже функция.
PM MAIL   Вверх
Экскалупатор
Дата 21.3.2010, 11:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 11
Всего: 24



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

Это сообщение отредактировал(а) Экскалупатор - 21.3.2010, 11:25
PM MAIL ICQ   Вверх
Exai1e
Дата 21.3.2010, 11:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 908
Регистрация: 3.12.2006
Где: Moscow

Репутация: 3
Всего: 30



DenWPF, сделай отдельную копию, с большим try catch в местах которые вызывают проблему (например запись в xml) и записью exception в лог файл, потом посмотри на исключение, или попробуй удаленную отладку (если есть возможность, вроде VS20xx поддерживает данную возможность)) ну или как сказал Экскалупатор, запускать код под дебагером у клиента


--------------------
"Решение зависит от выбранного геморроя" © Snowy
"у нас как в армии - либо работает, либо так и задумано"
PM MAIL ICQ   Вверх
DenWPF
Дата 22.3.2010, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



клиент удаленный. хотя надо это как то по пробовать.

клиент переустраивал систему - все гуд
PM MAIL   Вверх
DenWPF
Дата 23.3.2010, 03:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



блин, опять теже проблемы. весь код в catch try и не чего не выводит.
PM MAIL   Вверх
Dobermann
Дата 23.3.2010, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 992
Регистрация: 7.1.2008

Репутация: 1
Всего: 0



Ну так саму ошибку покажи!
PM   Вверх
DenWPF
Дата 23.3.2010, 12:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



так нет ошибки,  она просто не сохраняется
PM MAIL   Вверх
Экскалупатор
Дата 23.3.2010, 19:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 11
Всего: 24



значит ошибка есть. ты просто ее не видишь. покажи код который работает с файлом.
PM MAIL ICQ   Вверх
DenWPF
Дата 24.3.2010, 20:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



ложная инфа. сори

Это сообщение отредактировал(а) DenWPF - 24.3.2010, 21:18
PM MAIL   Вверх
DenWPF
Дата 24.3.2010, 21:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



так тут ниже.
XmlDocument xmlDoc = new XmlDocument();
запись в переменную
потом я её вывожу на экран и она правельно изменена.
xmlDoc.Save(Directory.GetCurrentDirectory() + "\\People1.xml");

не сохраняет в ХП  в вин7 работает.

аналог есть ?


как записать в файл стринг но что бы если файл занят попробывать ещё раз.

Это сообщение отредактировал(а) DenWPF - 25.3.2010, 12:38
PM MAIL   Вверх
MasterOfCode
Дата 25.3.2010, 12:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


elwin
**


Профиль
Группа: Участник
Сообщений: 740
Регистрация: 24.4.2008
Где: World.Russia.Tyum en

Репутация: 4
Всего: 27



Цитата(DenWPF @  24.3.2010,  23:44 Найти цитируемый пост)
xmlDoc.Save(Directory.GetCurrentDirectory() + "\\People1.xml");

Может на том компьютере запускают программу не со своего компьютера, а с сетевого хранилища. У меня была такая проблема, решилось копированием программы на диск. Либо можно просто в настройках (Панель упраления-администрирование-MS .NET Config-Runtime Security Policy) поставить Full Trust на запуск программ из сети.


--------------------
user posted image
PM ICQ   Вверх
DenWPF
Дата 25.3.2010, 14:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



нет, программа на диске.

 smile 

полный код
уже поменял                  
using (StreamWriter sw = new StreamWriter(Directory.GetCurrentDirectory() + "\\People1.xml", false, enc))
                 {
                      sw.WriteLine(xmlDoc.InnerXml);
                 }

тоже не работает...


Код

        static object xmlobj = new object();
        private static void ClassToXml()
        {
            try
            {
                lock (xmlobj)
                {
                    // Creating new XML document
                    XmlDocument xmlDoc = new XmlDocument();

                    // Creating and adding XML declaration
                    XmlDeclaration xmlDeclaration = xmlDoc.CreateXmlDeclaration("1.0", "UTF-8", null);
                    xmlDoc.InsertBefore(xmlDeclaration, xmlDoc.DocumentElement);

                    // Creating and adding the root node
                    XmlElement rootNode = xmlDoc.CreateElement("Comments");
                    xmlDoc.AppendChild(rootNode);

                    // Creating and adding the child node "Person"
                    foreach (ListFile u in books)
                    {
                        XmlElement parentNode = xmlDoc.CreateElement("Person");
                        parentNode.SetAttribute("Name", u.Name);


                        XmlElement parentNode2 = xmlDoc.CreateElement("Tasks");
                        parentNode.AppendChild(parentNode2);

                        xmlDoc.DocumentElement.PrependChild(parentNode);
                        // Proccesing all tasks
                        XmlElement parentTaskNode = xmlDoc.CreateElement("Task");
                        XmlElement taskNameNode = xmlDoc.CreateElement("Name");

                        foreach (Task t in u.Tasks)
                        {
                            taskNameNode = xmlDoc.CreateElement("Name");
                            XmlElement timeNode = xmlDoc.CreateElement("Time");

                            // Proccesing all TimeList of current task
                            foreach (TimeList time in t.timeList)
                            {
                                XmlElement tickNode;
                                XmlElement dayNode = xmlDoc.CreateElement("Day");
                                dayNode.SetAttribute("Name", time.TitleTime);
                                dayNode.SetAttribute("Count", time.count);

                                // Proccesing all time.time of current TimeList

                                foreach (string s in time.time)
                                {
                                    tickNode = xmlDoc.CreateElement("Tick");
                                    tickNode.InnerText = s;
                                    dayNode.AppendChild(tickNode);
                                }
                                timeNode.AppendChild(dayNode);
                            }
                            parentTaskNode.AppendChild(timeNode);
                            taskNameNode.InnerText = t.Name;
                            //Запись Status
                            taskNameNode.SetAttribute("Status", t.Status.ToString());

                            // URLS nodes
                            XmlElement urlsNode = xmlDoc.CreateElement("Urls");
                            if (t.Url != null)
                                foreach (string url in t.Url)
                                {
                                    XmlElement urlNode = xmlDoc.CreateElement("Url");
                                    urlNode.InnerText = url;
                                    urlsNode.AppendChild(urlNode);
                                }

                            // Message (<Message path="Task.Message" />)
                            XmlElement msgNode = xmlDoc.CreateElement("Message");
                            msgNode.SetAttribute("path", t.Message);
                          //  MessageBox.Show(msgNode.Attributes[0].Value);
                            parentTaskNode.PrependChild(msgNode);
                           // MessageBox.Show("msgNode  -  " + parentTaskNode.InnerXml);
                            parentTaskNode.PrependChild(urlsNode);
                           // MessageBox.Show("urlsNode  -  " + parentTaskNode.InnerText);
                            parentTaskNode.PrependChild(taskNameNode);
                           // MessageBox.Show("taskNameNode  -  " + parentTaskNode.InnerText);

                            parentNode2.AppendChild(parentTaskNode);
                            parentTaskNode = xmlDoc.CreateElement("Task");
                        }
                    }


                    //this.MainList.ItemsSource = books;
                    //this.MainList.Items.Refresh();
                 MessageBox.Show(xmlDoc.InnerXml);
                 //XmlTextWriter myXmlTextWriter = new XmlTextWriter(Directory.GetCurrentDirectory() + "\\People1.xml", System.Text.Encoding.UTF8);
                   // MessageBox.Show(Directory.GetCurrentDirectory() + "\\People1.xml");
                 //   if (Directory.Exists(Directory.GetCurrentDirectory() + "\\People1.xml") == true)
                    //    MessageBox.Show("Есть");
                 using (StreamWriter sw = new StreamWriter(Directory.GetCurrentDirectory() + "\\People1.xml", false, enc))
                 {
                      sw.WriteLine(xmlDoc.InnerXml);
                 }
                   // xmlDoc.Save(Directory.GetCurrentDirectory() + "\\People1.xml");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message + "  ||| ClassToXml - Error ");
            }
        }

PM MAIL   Вверх
DenWPF
Дата 27.3.2010, 17:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



почему может не работает?
using (StreamWriter sw = new StreamWriter(Directory.GetCurrentDirectory() + "\\People1.xml", false, enc))
                 {
                      sw.WriteLine(xmlDoc.InnerXml);
                 } 
в хп??? 
хелп
PM MAIL   Вверх
nikitao
Дата 27.3.2010, 19:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кот-программист
***


Профиль
Группа: Завсегдатай
Сообщений: 1206
Регистрация: 30.8.2005
Где: Спб

Репутация: 4
Всего: 26



Я верно понимаю, что код никаких Exception не выдает , а просто проходит по этим строчкам и не сохраняет файл в ожидаемое место, после чего успешно продолжает исполнение ? Если да , то попробуй Directory.GetCurrentDirectory() на экран что ли вывести или поменять на "C:\\People1.xml"... идиотизм конечно , но вдруг куда то сохраняет, но не туда куда ты хотел.

зы всю тему только мельком просмотрел.


--------------------
Жизнь - печальная штука.
PM MAIL ICQ Skype GTalk   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.1363 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.