Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Leitet die Ablaufverfolgungs- oder Debugausgabe an einen TextWriter oder Stream, z. B. FileStream.
Namespace: System.Diagnostics
Assembly: System (in system.dll)
Syntax
'Declaration
Public Class TextWriterTraceListener
Inherits TraceListener
'Usage
Dim instance As TextWriterTraceListener
public class TextWriterTraceListener : TraceListener
public ref class TextWriterTraceListener : public TraceListener
public class TextWriterTraceListener extends TraceListener
public class TextWriterTraceListener extends TraceListener
Hinweise
Hinweis
Das auf diese Klasse angewendete HostProtectionAttribute-Attribut besitzt den Resources-Eigenschaftenwert Synchronization. Das HostProtectionAttribute hat keine Auswirkungen auf Desktopanwendungen (die normalerweise durch Doppelklicken auf ein Symbol, Eingeben eines Befehls oder eines URL in einem Browser gestartet werden). Weitere Informationen finden Sie unter der HostProtectionAttribute-Klasse oder unter SQL Server-Programmierung und Hostschutzattribute.
Die TextWriterTraceListener-Klasse stellt die Writer-Eigenschaft bereit, mit der der Textwriter, in den die Ablaufverfolgungs- oder Debugausgabe erfolgt, abgerufen oder festgelegt wird.
Diese Klasse stellt außerdem Methoden für Close von Writer bereit, sodass dieser die Ablaufverfolgungs- oder Debugausgabe nicht mehr empfängt. Außerdem wird Flush für den Ausgabepuffer von Writer und Write für Meldungen an Writer bereitgestellt.
Sie müssen die Ablaufverfolgung oder das Debuggen aktivieren, um eine Ablaufverfolgungsüberwachung zu verwenden. Die folgende Syntax ist compilerspezifisch. Wenn Sie einen anderen Compiler als C# oder Visual Basic verwenden, finden Sie entsprechende Informationen in der Dokumentation zum Compiler.
Wenn Sie das Debuggen in C# aktivieren möchten, fügen Sie in der Compilerbefehlszeile beim Kompilieren des Codes das /d:DEBUG-Flag hinzu, oder fügen Sie #define DEBUG am Anfang der Datei ein. Fügen Sie in Visual Basic in der Compilerbefehlszeile das /d:DEBUG=True-Flag hinzu.
Wenn Sie die Verwendung der Ablaufverfolgung in C# aktivieren möchten, fügen Sie in der Compilerbefehlszeile beim Kompilieren des Codes das /d:TRACE-Flag hinzu, oder fügen Sie #define TRACE am Anfang der Datei ein. Fügen Sie in Visual Basic in der Compilerbefehlszeile das /d:TRACE=True-Flag hinzu.
Um eine Ablaufverfolgungsüberwachung hinzuzufügen, bearbeiten Sie die Konfigurationsdatei, die dem Namen der Anwendung entspricht. In dieser Datei können Sie einen Listener hinzufügen und dessen Typ und Parameter festlegen, einen Listener entfernen oder alle Listener löschen, die zuvor durch die Anwendung festgelegt wurden. Die Konfigurationsdatei sollte wie im folgenden Beispiel formatiert werden.
<configuration>
<system.diagnostics>
<trace autoflush="false" indentsize="4">
<listeners>
<add name="myListener"
type="System.Diagnostics.TextWriterTraceListener"
initializeData="TextWriterOutput.log" />
<remove name="Default" />
</listeners>
</trace>
</system.diagnostics>
</configuration>
Hinweis
Wenn versucht wird, in eine Datei zu schreiben, die bereits verwendet wird oder die nicht verfügbar ist, wird dem Dateinamen automatisch eine GUID vorangestellt.
| Thema | Position |
|---|---|
| Exemplarische Vorgehensweise: Integrieren der ASP.NET-Ablaufverfolgung und der System.Diagnostics-Ablaufverfolgung | Erstellen von ASP.NET-Webanwendungen in Visual Studio |
| Exemplarische Vorgehensweise: Integrieren der ASP.NET-Ablaufverfolgung und der System.Diagnostics-Ablaufverfolgung | Erstellen von ASP.NET-Webanwendungen in Visual Studio |
| Exemplarische Vorgehensweise: Integrieren der ASP.NET-Ablaufverfolgung und der System.Diagnostics-Ablaufverfolgung | Erstellen von ASP.NET-Webanwendungen |
Beispiel
Im folgenden Beispiel wird eine Instanz der TextWriterTraceListener-Klasse implementiert, die einen StreamWriter mit der Bezeichnung myOutputWriter verwendet, um in die Datei TestFile.txt zu schreiben. Im Beispiel wird zunächst eine Datei für Ausgaben erstellt. Anschließend wird der StreamWriter für den ersten Textwriter erstellt, der Ausgabedatei zugeordnet und den Listeners hinzugefügt. Im Code wird dann eine Textzeile in die Datei ausgegeben. Schließlich wird im Beispiel der Ausgabepuffer geleert.
Nach dem Ausführen des Beispiels können Sie die Datei TestFile.txt öffnen und die Ausgaben überprüfen.
Public Class Sample
Public Shared Sub Main()
' Create a file for output named TestFile.txt.
Dim myFile As Stream = File.Create("TestFile.txt")
' Create a new text writer using the output stream, and add it to
' the trace listeners.
Dim myTextListener As New TextWriterTraceListener(myFile)
Trace.Listeners.Add(myTextListener)
' Write output to the file.
Trace.Write("Test output ")
' Flush the output.
Trace.Flush()
System.Environment.ExitCode = 0
End Sub
End Class
public class Sample
{
public static int Main(string[] args) {
// Create a file for output named TestFile.txt.
Stream myFile = File.Create("TestFile.txt");
/* Create a new text writer using the output stream, and add it to
* the trace listeners. */
TextWriterTraceListener myTextListener = new
TextWriterTraceListener(myFile);
Trace.Listeners.Add(myTextListener);
// Write output to the file.
Trace.Write("Test output ");
// Flush the output.
Trace.Flush();
return 0;
}
}
int main()
{
// Create a file for output named TestFile.txt.
Stream^ myFile = File::Create( "TestFile.txt" );
/* Create a new text writer using the output stream, and add it to
* the trace listeners. */
TextWriterTraceListener^ myTextListener = gcnew TextWriterTraceListener( myFile );
Trace::Listeners->Add( myTextListener );
// Write output to the file.
Trace::Write( "Test output " );
// Flush the output.
Trace::Flush();
return 0;
}
public class Sample
{
public static void main(String[] args)
{
// Create a file for output named TestFile.txt.
Stream myFile = File.Create("TestFile.txt");
/* Create a new text writer using the output stream, and add it to
* the trace listeners.
*/
TextWriterTraceListener myTextListener =
new TextWriterTraceListener(myFile);
Trace.get_Listeners().Add(myTextListener);
// Write output to the file.
Trace.Write("Test output ");
// Flush the output.
Trace.Flush();
return;
} //main
} //Sample
Vererbungshierarchie
System.Object
System.MarshalByRefObject
System.Diagnostics.TraceListener
System.Diagnostics.TextWriterTraceListener
System.Diagnostics.ConsoleTraceListener
System.Diagnostics.DelimitedListTraceListener
System.Diagnostics.XmlWriterTraceListener
Threadsicherheit
Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
Plattformen
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
Siehe auch
Referenz
TextWriterTraceListener-Member
System.Diagnostics-Namespace
TraceListener
DefaultTraceListener-Klasse
ConsoleTraceListener-Klasse
EventLogTraceListener-Klasse
Stream
TextWriter
Debug-Klasse
Trace