Delen via


Overzicht: Aangepaste logboeklisteners maken (Visual Basic)

Deze handleiding demonstreert hoe een aangepaste logboeklistener te maken en configureren om naar de uitvoer van het My.Application.Log object te luisteren.

Aan de slag komen

Logboeklisteners moeten overnemen van de TraceListener klasse.

De listener maken

  • Maak in uw toepassing een klasse met de naam SimpleListener die wordt overgenomen van TraceListener.

    Public Class SimpleListener
        Inherits System.Diagnostics.TraceListener
    
        <Security.Permissions.HostProtection(Synchronization:=True)>
        Public Overloads Overrides Sub Write(ByVal message As String)
            MsgBox("Write: " & message)
        End Sub
    
        <Security.Permissions.HostProtection(Synchronization:=True)>
        Public Overloads Overrides Sub WriteLine(ByVal message As String)
            MsgBox("WriteLine: " & message)
        End Sub
    End Class
    

    De Write en WriteLine methoden die zijn vereist voor de basisklasse, roepen MsgBox aan om hun invoer weer te geven.

    Het HostProtectionAttribute kenmerk wordt toegepast op de Write en WriteLine methoden, zodat de kenmerken overeenkomen met de basisklassemethoden. Met HostProtectionAttribute het kenmerk kan de host waarop de code wordt uitgevoerd, bepalen of de code synchronisatie van hostbeveiliging beschikbaar maakt.

    Opmerking

    Het HostProtectionAttribute kenmerk is alleen van kracht op niet-beheerde toepassingen die als host fungeren voor de algemene taalruntime en die hostbeveiliging implementeren, zoals SQL Server.

Om ervoor te zorgen dat My.Application.Log uw logboeklistener gebruikt, moet u de assembly die uw logboeklistener bevat sterk benoemen.

De volgende procedure biedt enkele eenvoudige stappen voor het maken van een sterk benoemde assembly voor logboeklistener. Zie Voor meer informatie het maken en gebruiken van sterk benoemde assembly's.

Het logboekluisteraar-assembly een sterke naam geven

  1. Een project selecteren in Solution Explorer. Kies Eigenschappen in het menu Project.

  2. Klik op het tabblad Ondertekenen.

  3. Selecteer het vakje Assembly ondertekenen.

  4. Selecteer <Nieuw> in de vervolgkeuzelijst 'Een sterk naamsleutelbestand kiezen'.

    Het dialoogvenster Sterke naamsleutel maken wordt geopend.

  5. Geef een naam op voor het sleutelbestand in het vak Sleutelbestand .

  6. Voer een wachtwoord in in de vakken Wachtwoord invoeren en Wachtwoord bevestigen .

  7. Klik op OK.

  8. Bouw de toepassing opnieuw.

De listener toevoegen

Nu de assembly een strong name heeft, moet u de strong name van de listener bepalen, zodat My.Application.Log uw logboeklistener gebruikt.

De indeling van een sterk benoemd type is als volgt.

<typenaam>, <assemblynaam>, <versienummer>, <cultuur>, <sterke naam>

De sterke naam van de luisteraar bepalen

  • De volgende code laat zien hoe u de sterk benoemde typenaam voor SimpleListener kunt bepalen.

    Public Sub DisplaySimpleListenerStrongName()
        Dim t As Type = GetType(SimpleListener)
        MsgBox(t.FullName & ", " & t.Assembly.FullName)
    End Sub
    

    De sterke naam van het type is afhankelijk van uw project.

Met de sterke naam kunt u de luisteraar toevoegen aan de My.Application.Log collectie logboekluisteraars.

De listener toevoegen aan My.Application.Log

  1. Klik met de rechtermuisknop op app.config in Solution Explorer en kies Openen.

    – of –

    Als er een app.config bestand is:

    1. Kies Nieuw item toevoegen in het menu Project.

    2. Kies in het dialoogvenster Nieuw item toevoegenhet toepassingsconfiguratiebestand.

    3. Klik op Toevoegen.

  2. Zoek de <listeners> sectie in de <source> sectie met het name attribuut "DefaultSource" in de <sources> sectie. De <sources> sectie bevindt zich in de <system.diagnostics> sectie, in de sectie op het hoogste niveau <configuration> .

  3. Voeg dit element toe aan de <listeners> sectie:

    <add name="SimpleLog" />
    
  4. Zoek de <sharedListeners> sectie in de <system.diagnostics> sectie, in de bovenliggende <configuration> sectie.

  5. Voeg dit element toe aan die <sharedListeners> sectie:

    <add name="SimpleLog" type="SimpleLogStrongName" />
    

    Wijzig de waarde van SimpleLogStrongName naar de sterke naam van de listener.

Zie ook