vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

In diesem Forum haben Sie die Möglichkeit Kommentare, Fragen und Verbesserungsvorschläge zu den im vb@rchiv gelisteten Tipps und Workshops zu posten.

Hinweis:
Ein neues Thema kann immer nur über die jeweilige Tipps & Tricks bzw. Workshop Seite eröffnet werden!

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fragen zu Tipps & Tricks und Workshops im vb@rchiv
Tipp 1649: LOG-Datei zur Fehlerprotokollierung (.NET) 
Autor: Logo
 Tipp anzeigenDatum: 29.05.10 14:32

Hallo allerseits, hallo Herr Kleinmeyer,

soeben habe ich versucht, das Logfile-Modul in mein Projekt einzubauen. Die Allgemeine Fehlerbehandlung funktioniert einwandfrei, aber es wird kein File geschrieben.
Um zu sehen, 'wo es hängt', habe ich an den verschiedenen Stellen Message-Boxen eingebaut und dabei ein mir unerklärliches Phänomen entdeckt:

Public Sub LogMessage(ByVal Message As String, Optional ByVal LogFileName 
                                   As String = "")
 
        MsgBox("1: *" & LogFileName & "*")
 
        If LogFileName.Length = "" Then
            ' Dateiname anhand des aktuellen Datums festlegen
            LogFileName = Application.StartupPath & "\EventLog_" & _
              Format$(Now, "yyyy-mm-dd") & ".log"
        End If
 
        MsgBox("2: *" & LogFileName & "*")
 
        Try
            ' Datei öffen (Text anhängen)
            Dim oStream As IO.StreamWriter =            
                              System.IO.File.AppendText(LogFileName)
 
            ' Datum und Uhrzeit autom. eintragen
            oStream.WriteLine(Now)
 
            ' Message (Fehlermeldung) speicherrn
            oStream.WriteLine(Message & vbCrLf)
 
            ' Datei schließen
            oStream.Close()
 
        Catch ex As Exception
 
        End Try
 
        MsgBox("3: *" & LogFileName & "*")
Die erste Message-Box wird noch durchlaufen (und zeigt auch den korrekten Pfad), aber die 2. und 3. werden schlichtweg nicht mehr angezeigt, vielmehr wird das Programm beendet. Kein Wunder also, wenn nichts gespeichert wird; der entsprechende Code kommt gar nicht zur Ausführung...

Hat jemand evtl. eine Idee, woran dies liegen könnte= Grundsätzlich finde ich die Idee mit dem LogFile super und würde sie sehr gerne einbauen.

Vielen Dank im Voraus und beste Grüße

Logo
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: LOG-Datei zur Fehlerprotokollierung (.NET) 
Autor: ModeratorDaveS (Moderator)
Datum: 29.05.10 14:53

Nicht so sehr unerklärlich, die Zeile
If LogFileName.Length = "" Then
wird eine Exception auslösen weil "" nicht in numerisch umwandelbar ist.

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: LOG-Datei zur Fehlerprotokollierung (.NET) 
Autor: Logo
Datum: 30.05.10 09:59

Hallo DaveS,

upps, logisch... Erstaunlich nur, dass das seit 2 Jahren keinem aufgefallen ist - ich hatte es mit Copy & Paste aus dem Tipp übernommen.

Auf jeden Fall herzlichen Dank

Logo
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: LOG-Datei zur Fehlerprotokollierung (.NET) 
Autor: ModeratorDaveS (Moderator)
Datum: 30.05.10 11:22

Naja, da ist so viel am Tipp zu bemängeln (schreibt ins Programmverzeichnis, Fehler beim Öffnen/Schreiben werden lautlos übersprungen, Datei wird für jede Zeile geöffnet und wieder geschlossen, bzw kein Finally um die Datei unbedingt wieder zu schliessen...) dass die Tatsache, dass der Code gar nicht läuft relativ unwichtig erscheint

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: LOG-Datei zur Fehlerprotokollierung (.NET) 
Autor: Logo
Datum: 30.05.10 12:49

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: LOG-Datei zur Fehlerprotokollierung (.NET) 
Autor: Maas
Datum: 30.05.10 13:33

Da fragt man sich, wieso man die Tipps "melden" muss, wenn man sie auch einfach posten könnte...
Eigentlich könnte man dabei ja von einer qualitativen Überprüfung ausgehen.

Maas
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: LOG-Datei zur Fehlerprotokollierung (.NET) 
Autor: ModeratorDaveS (Moderator)
Datum: 30.05.10 14:58

Ich glaube auch die Qualitätskontrolle könnte etwas verbessert werden. Darauf habe ich aber keinen besonderen Einfluss.

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

bug im format$ 
Autor: rooty
Datum: 15.10.10 22:13

Hallo,

da ist noch ein kleiner Bug im source. Jedenfalls auf "Stammenglischen" Systemen (was für ein Wort)

Unter win7 mit deutschem Languagepack produziert

Format$(Now, "yyyy-mm-dd") & ".log" -> Jahr-Minuten-Tage

Mit yyyy-MM-dd nimmt er den Tag.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: bug im format$ 
Autor: ModeratorDaveS (Moderator)
Datum: 16.10.10 07:20

Format$ ist auch eine veraltete Konstruktion aus VB6 Zeiten, was man mit .Net nicht mehr verwendet. Weder Format() noch $ am Ende. Und "mm" ist Minute, egal welchen Language Pack man hat. Ist ja gut dokumentiert. Aber meine Meinung zum Tipp habe ich schon gepostet.

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um einen neuen Beitrag schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel