Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 | 2 |

 

  Вопрос: Определить - где Я? Добавлено: 26.03.11 09:15  

Автор вопроса:  час1
По ходу выполнения программы могут происходить ошибки в том числе и не "предвиденные".
 Конечно, если правильно написать процедуру - эти ошибки и исключения будут обработаны.
Но всё же хотелось бы вести лог файл с возникающими ошибками.
Как это лучше реализовать, что бы в строке лога было (описание ошибки, имя процедуры, значение и ...) вобщем данные - которые помогу понять что надо исправить в программе, что бы исключить возникновение подобной ситуации?

Ответить

  Ответы Всего ответов: 16  

Номер ответа: 1
Автор ответа:
 Лёха



Вопросов: 20
Ответов: 79
 Web-сайт: supersait16.ucoz.ru
 Профиль | | #1
Добавлено: 26.03.11 13:11
ручками))

Ответить

Номер ответа: 2
Автор ответа:
 час1



Вопросов: 5
Ответов: 35
 Профиль | | #2 Добавлено: 26.03.11 13:15
Спасибо!
Я так и думал...

Ответить

Номер ответа: 3
Автор ответа:
 час1



Вопросов: 5
Ответов: 35
 Профиль | | #3 Добавлено: 26.03.11 13:16
а - Как это лучше реализовать?

Ответить

Номер ответа: 4
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #4 Добавлено: 26.03.11 13:56
Appliaction.unhandledError

Ответить

Номер ответа: 5
Автор ответа:
 Лёха



Вопросов: 20
Ответов: 79
 Web-сайт: supersait16.ucoz.ru
 Профиль | | #5
Добавлено: 26.03.11 14:00
если ты хочешь писать лог в файл,то создаёшь сначала StreamWriter,потом после каждой строчки,в которой может возникнуть исключение,ты допустим,пишешь
  1. sw.WriteLine("имя процедуры : procname ,Исключение :" + ex.Message)
где sw - это StreamWriter, ex - это исключение,procname - это имя функции(процедуры).И всё это дело конечно же в блоке try { } catch(Exception ex).Это я тебе привел код для C#,а так как с шарпа на вб перевести достаточно легко,то,думаю,ты переведёшь сам!

Ответить

Номер ответа: 6
Автор ответа:
 Лёха



Вопросов: 20
Ответов: 79
 Web-сайт: supersait16.ucoz.ru
 Профиль | | #6
Добавлено: 26.03.11 14:01
может есть ошибки,просто я с шарпа уже на C++ перешёл.

Ответить

Номер ответа: 7
Автор ответа:
 VbStarter



ICQ: 357911808 

Вопросов: 118
Ответов: 1340
 Web-сайт: moscowdevils.ru
 Профиль | | #7
Добавлено: 26.03.11 14:05
В код-файле app поставить в событие UnhandledExeption код обработки ошибки.

Ответить

Номер ответа: 8
Автор ответа:
 час1



Вопросов: 5
Ответов: 35
 Профиль | | #8 Добавлено: 26.03.11 16:51
спасибо за ответы!
буду искать - что и где!

Ответить

Номер ответа: 9
Автор ответа:
 час1



Вопросов: 5
Ответов: 35
 Профиль | | #9 Добавлено: 26.03.11 16:57
Ага
UnhandledException: возникает, если в приложение обнаруживает необработанное исключение.

Ответить

Номер ответа: 10
Автор ответа:
 СанСаныч



Вопросов: 3
Ответов: 118
 Профиль | | #10 Добавлено: 26.03.11 18:28
А с помощью рефлексии можно узнать где оно произошло :)

Ответить

Номер ответа: 11
Автор ответа:
 час1



Вопросов: 5
Ответов: 35
 Профиль | | #11 Добавлено: 26.03.11 19:01
вот кое что хорошее, но не силён я сразу в трёх языках плавать как рыба
кто нить может помочь перевести код в VB.NET

http://www.vbnet.ru/forum/show.aspx?id=171072

using System;
using System.Threading;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    static class Program
    {
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            // set unhandled exception mode
            Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);
            Application.ThreadException += new ThreadExceptionEventHandler(Application_ThreadException);

            // run application
            Application.Run(new Form1());
        }

        static void Application_ThreadException(object sender, ThreadExceptionEventArgs e)
        {
            // show exception or write to log
            MessageBox.Show(e.Exception.Message,
                            "Unhandled Exception",
                            MessageBoxButtons.OK,
                            MessageBoxIcon.Error); ;
        }
    }
}

Ответить

Номер ответа: 12
Автор ответа:
 час1



Вопросов: 5
Ответов: 35
 Профиль | | #12 Добавлено: 26.03.11 19:03
СанСаныч
Спасибо, только рефлексию я ещё не проходил.
И почему то она мне вообще на глаза не попадалась - кто это и как ею пользоваться?

Ответить

Номер ответа: 13
Автор ответа:
 VbStarter



ICQ: 357911808 

Вопросов: 118
Ответов: 1340
 Web-сайт: moscowdevils.ru
 Профиль | | #13
Добавлено: 26.03.11 19:08
надо написат с нуля под вб.
  1.  
  2. шаблон с NameSpace и классом есть в файле App...
  3. Sub Application_UnhandledException(object sender, UnhandledException.EventArgs e) // Извиняюсь за неточности, но всё можно посмотрреть в комбобоксе над иде в файле кода выше указанном. нет под рукой студии
  4. msgbox (Err.Description, vbCritical)
  5. End Sub

Ответить

Номер ответа: 14
Автор ответа:
 СанСаныч



Вопросов: 3
Ответов: 118
 Профиль | | #14 Добавлено: 26.03.11 20:11
час1 пишет:
кто это и как ею пользоваться?

С ее помощью можно определить по имени класса имена всех принадлежащих ему элементов (переменные, процедуры и т.д.). При чем не просто определить имена, но и нахально пользоваться. Примеры могу нарисовать, но на C#.

Ответить

Номер ответа: 15
Автор ответа:
 час1



Вопросов: 5
Ответов: 35
 Профиль | | #15 Добавлено: 26.03.11 21:04
Спасибо Саныч,
 но на шарпе я ни пайму.......

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам