Поиск…


Вступление

Всякий раз, когда у вас возникает проблема в коде, всегда полезно знать, что происходит внутри. Класс System.Diagnostics.Debug в .Net Framework поможет вам в этой задаче.

Первым преимуществом класса Debug является то, что он создает код только в том случае, если вы создаете приложение в режиме отладки. Когда вы создаете приложение в режиме Release, код не будет генерироваться из вызовов Debug.

Отладка в консоли

Module Module1
    Sub Main()
        Debug.WriteLine("This line will be shown in the Visual Studio output console")

        Console.WriteLine("Press a key to exit")
        Console.ReadKey()

        Debug.WriteLine("End of application")
    End Sub
End Module

будет производить:

Окно вывода отладки в Visual Studio

Отступы вывода отладки

Module Module1

    Sub Main()
        Debug.WriteLine("Starting aplication")

        Debug.Indent()
        LoopAndDoStuff(5)
        Debug.Unindent()

        Console.WriteLine("Press a key to exit")
        Console.ReadKey()

        Debug.WriteLine("End of application")
    End Sub

    Sub LoopAndDoStuff(Iterations As Integer)
        Dim x As Integer = 0
        Debug.WriteLine("Starting loop")
        Debug.Indent()
        For i As Integer = 0 To Iterations - 1
            Debug.Write("Iteration " & (i + 1).ToString() & " of " & Iterations.ToString() & ": Value of X: ")
            x += (x + 1)
            Debug.WriteLine(x.ToString())
        Next
        Debug.Unindent()
        Debug.WriteLine("Loop is over")
    End Sub
End Module

будет производить: Выход при отступе

Отладка в текстовом файле

В начале вашего приложения ваш должен добавить TextWriterTraceListener в список Listeners класса Debug.

Module Module1

    Sub Main()
        Debug.Listeners.Add(New TextWriterTraceListener("Debug of " & DateTime.Now.ToString() & ".txt"))

        Debug.WriteLine("Starting aplication")

        Console.WriteLine("Press a key to exit")
        Console.ReadKey()

        Debug.WriteLine("End of application")
    End Sub
End Module

Весь созданный код отладки будет выводиться в консоли Visual Studio И в текстовом файле, который вы выбрали.

Если файл всегда один и тот же:

Debug.Listeners.Add(New TextWriterTraceListener("Debug.txt"))

Результат будет добавляться к файлу каждый раз. И новый файл, начинающийся с GUID, затем будет генерироваться ваше имя файла.



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow