Großer Anfänger Thread

Ach so, danke für den Hinweis. Ich hatte jetzt angenommen, dass VB6-Code im Mix mit VB.NET-Code gar nicht funktionieren würde und glaubte mich auf der sicheren Seite. Naja, man lernt nie aus.

Christian Kusmanow hat gesagt.:
anhand der geworfenen Exception
Öhm, und wie mache ich das?
 
Indem Du dir dazu mal die MSDN Casts zum Thema
und Dir zusätzlich den einen Exception Stickie im .NET Café Forum anschaust...

Und alles weitere findest hier im .NET Forum und in der MSDN Dokumentation der entsprechenden Methoden...
 
Argh, so eine Antwort habe ich als normal fauler Mensch natürlich gefürchtet. Frei übersetzt meinst du also: :google: und selber finden. Das trainiert am besten.

Grummel, du hast ja recht. Normalerweise würde ich das einem Anfänger auch immer empfehlen, aber das Thema ist ziemlich umfangreich und ich muss eigentlich in meinem Prog nur herausfinden, ob das Kopieren/Löschen erfolgreich war.

Hast du nicht vielleicht einen Code-Schnipsel, der die Frage direkt beantwortet?
 
So war das auch nicht gemeint. Es ging darum das Du dich erst mal selber zum Thema beliest,
bevor Du dich daran machst das anzuwenden.
Es gibt immer wieder Fälle wo Leute Exeptions als Programmflusssteuerung zu verwenden,
weil sie das Thema gar ned verstanden haben. Und da wir das hier schon durchgekaut haben,
hatte ich keine Lust nochmal einen solchen Erklärbär zu verfassen.

Aber für alle die diesen Thread gefunden haben und jetzt nicht selber suchen wollen,
obwohl der folgende Thread hier als Stickie markiert wurde und als erstes Thema angezeigt wird:
[thread=249368]Exception Handling - Linkliste - Thread[/thread]
 
Christian Kusmanow hat gesagt.:
So war das auch nicht gemeint. Es ging darum das Du dich erst mal selber zum Thema beliest, bevor Du dich daran machst das anzuwenden.
Vertigo21 hat gesagt.:
Argh, so eine Antwort habe ich als normal fauler Mensch natürlich gefürchtet. Frei übersetzt meinst du also: :google: und selber finden. Das trainiert am besten.

Grummel, du hast ja recht.
Ich hab das schon richtig verstanden und finde immer noch, dass du völlig recht hast. Es ist immer besser man setzt sich mit einem Thema selbst auseinander. Ich bin bestimmt der letzte, der dir deswegen böse ist oder so.
Ich bin nur etwas unter Zeitdruck und versuche natürlich möglichst schnell zum Ziel zu kommen. Da bleibt die Gründlichkeit auf der Strecke.
(Aber wie ich ja schon in der PM erwähnte: Nach dem Projekt werde ich mich privat eingehend mit C# beschäftigen. Da werde ich dann schon aus Eigennutz gründlich sein.)

@ Norbert Eder:
Danke für den Tipp, es funktioniert. Ich habe es jetzt so gemacht (ist zwar nicht perfekt, aber für meine Zwecke reicht es alle mal):
Code:
'##### TEST-Funktion ###########################
        Dim success As Boolean = True
        Try
            System.IO.File.Copy("C:\hallo.txt", "C:\bye.txt")
        Catch ex As Exception
            success = False
        End Try

        If success = False Then
            MessageBox.Show("Kopieren Fehlgeschlagen")
        Else
            MessageBox.Show("Kopieren erfolgreich")
        End If

'#################################################
 
Zuletzt bearbeitet:
Wärs nicht so besser ?
Code:
Try            
     System.IO.File.Copy("C:\hallo.txt", "C:\bye.txt")
     MessageBox.Show("Kopieren erfolgreich")         
Catch ex As Exception
    MessageBox.Show("Kopieren Fehlgeschlagen: " & ex.Message)  
End Try

Ist doch viel übersichtlicher
 
Das ist viel zu allgemein. Anhand der Exceptions die von der Methode System.IO.File.Copy geworfen werden können,
kann man zB herraus finden ob die Schreibweise der Dateinamen nicht korrekt sind:
  • ArgumentException
  • ArgumentNullException
  • NotSupportedException
  • PathTooLongException
  • NotSupportedException
Oder die Datei die kopiert werden soll oder deren Verzeichnis nicht vorhanden ist:
  • FileNotFoundException
  • DirectoryNotFoundException
Auf die Datei(en) nicht zugrgriffen werden konnte:
  • IOException
  • UnauthorizedAccessException
Jetzt musst entscheiden, welche Exceptions Du behandeln willst bzw. auf welche Fehler Du schon vorweg prüfst,
sie ergo nicht mehr behandelt werden müssen. Und als letztes fängst die Exception ansich ab.
 
Und schon wieder ich:

Ich habe mit Hilfe dieses Beitrags meine eigene kleine Funktion zum Auslesen von einer Excel-Tabelle gebastelt.

Leider wird jedesmal die Exception ausgelöst. Die Datei ist vorhanden und er bekommt auch den korrekten Pfad. Die Datei ist weder geöffnet oder sonstwie schreib-/lesegeschützt. Woran kann es liegen?

Code:
    Private Function read_from_xls(ByVal Quellpfad As String)
        Try
            Dim Dateiname As String = Dir(Quellpfad & "\*.xls")
            Quellpfad &= Dateiname

            Dim DS As System.Data.DataSet
            Dim MyCommand As System.Data.OleDb.OleDbDataAdapter
            Dim MyConnection As System.Data.OleDb.OleDbConnection

            MyConnection = New System.Data.OleDb.OleDbConnection( _
                  "provider=Microsoft.Jet.OLEDB.4.0; " & _
                  "data source= " & Quellpfad & " ; " & _
                  "Extended Properties=Excel 8.0;")
            ' Select the data from Sheet1 of the workbook.
            MyCommand = New System.Data.OleDb.OleDbDataAdapter( _
                  "select * from [Sheet1$]", MyConnection)

            DS = New System.Data.DataSet()
            MyCommand.Fill(DS)
            MyConnection.Close()

            Dim anz As Integer = DS.Tables.Count
            MessageBox.Show(anz & " Tabellen befinden sich im Dataset")

            Return DS
        Catch ex As Exception
            MessageBox.Show("#" & Quellpfad & "#", "Auslesen gescheitert")
            Return False
        End Try
    End Function
 

Neue Beiträge

Zurück