2010-01-31 2 views

답변

2

학습 속도에 맞는 책 (또는 자습서)을 구입하면됩니다. 그러나 종종 응용 프로그램을 만들 수 있고 "세련된"응용 프로그램을 만들 수 있다는 것 사이에 차이가 있다는 것을 명심하십시오. 당신은 책에서 그것을 얻을 수 없습니다. 많은 앱을 만들지 못하게되었습니다. 여기

시작하기에 알맞은 장소 (그리고 무료) : 해당 사이트에서 Visual Basic Developer Center

: 당신이 기본에 익숙해지면 Learning Visual Basic from the Ground Up

windowsclient.net

5

에서 살펴 그것은 아니다 세련된 응용 프로그램을 만드는 간단한 작업. 많은 시간과 경험이 필요합니다.

.NET에서 효과적인 오류 처리는 '처리되지 않은'스레드 및 도메인 예외를 처리하여 수행 할 수 있습니다.

다음 코드는이를 수행하는 응용 프로그램의 예입니다. 자신 만의 Form 인스턴스를 파생시키기를 원할 것입니다.

주제에 관한 좋은 책을 사면이 방법을 배우는 효과적인 방법이 될 것입니다.


Module modMain 

    Public Sub Log(ByVal ex As Exception) 

     Try 

      Dim logDirectory As String = IO.Path.Combine(Application.StartupPath, "Log") 
      Dim logName As String = DateTime.Now.ToString("yyyyMMdd") & ".txt" 
      Dim fullName As String = IO.Path.Combine(logDirectory, logName) 

      If Not IO.Directory.Exists(logDirectory) Then 
       IO.Directory.CreateDirectory(logDirectory) 
      End If 

      Dim errorString As String = DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss") & " >> " & _ 
             ex.Message & Environment.NewLine & _ 
             ex.StackTrace & Environment.NewLine 

      IO.File.AppendAllText(fullName, errorString) 

     Catch ignore As Exception 

     End Try 

    End Sub 

    Public Sub ThreadExceptionHandler(ByVal sender As Object, ByVal e As Threading.ThreadExceptionEventArgs) 
     Log(e.Exception) 
    End Sub 

    Public Sub DomainExceptionHandler(ByVal sender As Object, ByVal e As System.UnhandledExceptionEventArgs) 
     Dim ex As Exception = CType(e.ExceptionObject, Exception) 
     Log(ex) 
    End Sub 

    Public Sub Main() 

     AddHandler Application.ThreadException, AddressOf ThreadExceptionHandler 
     Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException) 

     AddHandler AppDomain.CurrentDomain.UnhandledException, AddressOf DomainExceptionHandler 

     Try 
      Application.Run(New Form) 
     Catch ex As Exception 
      Log(ex) 
     Finally 
      RemoveHandler Application.ThreadException, AddressOf ThreadExceptionHandler 
      RemoveHandler AppDomain.CurrentDomain.UnhandledException, AddressOf DomainExceptionHandler 
     End Try 

    End Sub 

End Module 
+0

+1 다음은 MSDN 설명서의 샘플 코드에 대한 링크입니다. http://msdn.microsoft.com/en-us/library/system.windows.forms.application.threadexception.aspx – MarkJ

관련 문제