Einführung zu DebugView

Sysinternals DebugView

Version 4.75 vom 08.08.2008
Copyright © 1998-2008 Mark Russinovich

Sysinternals - www.sysinternals.com

DebugView ist ein Programm mit dem die Debug-Ausgaben eines lokalen Systems oder jedes anderen Computers, der übers Netzwerk via TCP/IP erreichbar ist, angesehen werden können. Es zeigt sowohl die kernel-mode wie auch die Win32 Debug-Ausgaben an, die mit den Standard API-Debug-Ausgabe-Funktionen erzeugt werden, soweit kein Debugger für die Debug-Ausgaben der Programme und Geräte-Treiber benötigt wird und nicht Windows-fremde Debug-Funktionen zur Anzeige der Debug-Ausgaben verwendet werden.

Lizenz/Nutzungsbestimmung

DebugView darf nicht ohne der schriftliche Zustimmung von Mark Russinovich weitergegeben/verteilt werden. Besteht dazu der Wunsch, so ist zu kontaktieren: licensing@sysinternals.com.

Sysinternals ↔ Microsoft

Winternals ist ein 1996 von Mark Russinovich und Bryce Cogswell gegründetes Softwareunternehmen. Die Software von Winternals wird unter dem Namen Sysinternals im Internet als Freeware zum Herunterladen angeboten. 2006 kaufte Microsoft die Winternals Software LP.

Übersetzung ins Deutsche

(Stand 20.09.2008)

Dies ist eine freie Übersetzung in die deutsche Sprache. Sie basiert auf der dbgview.chm
vom 15.09.2005 mit 68.539 Byte, die seit DebugView-Version 4.50 beigelegt ist.
Diese Version ist selbst bei DebugView-Version 4.75 unverändert, obwohl einige Neuerungen und Fehlerbereinigungen erfolgt sind.

"freie Übersetzung" bedeutet:

  • Das Programm Dbgview.exe wurde nicht "eingedeutscht", deswegen sind die Menüs und Bezeichner wie sie im Programm erscheinen nicht übersetzt.
  • Soweit zum besseren Verständnis/zur besseren Anwendung wurden eigene Texte, Abbildungen, Dateien (=Inhalts-Menü-Punkte) ergänzt bzw. entsprechende Format-Hervorhebungen getroffen.
  • einige Englisch-Vokabeln sind beim Leser dennoch nötig, denn nicht alles wurde übersetzt:
    Einstellungen = Options, (Beim Booten protokollieren), Fern-Beobachtung vorbereiten = Remote Monitoring, Managing Connection Views
  • in Vorbereitung ist eine Versions-Übersicht (noch in engl.)


erfaßte Ausgaben

Einsatzmöglichkeiten

DebugView läuft unter Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, Windows 95, Windows 98, Windows Me und Windows Vista. Anmerkung: Soll DebugView unter Windows 95 ausgeführt werden, so ist zuvor das "Windows Socket 2.0 for Windows 95" aus support.microsoft.com/kb/182108/EN-US/ zu installieren.

Unter Windows 9x/Me erfaßt DebugView Debug-Ausgaben von folgenden Quellen:

  • Win32 OutputDebugString

  • Win16 OutputDebugString

  • Kernel-mode Out_Debug_String

  • Kernel-mode _Debug_Printf_Service

Unter Windows NT, Win2k und Vista erfaßt DebugView Debug-Ausgaben von:

  • Win32 OutputDebugString

  • Kernel-mode DbgPrint

  • Alle kernel-mode Varianten von DbgPrint wie sie in Windows XP und .NET Server implementiert sind

DebugView extrahiert auch kernel-mode Debug-Ausgaben, die bei der Erstellung von dump-Dateien bei einem Absturz erzeugt werden, wenn die Ausgaben-Erfassung von DebugView zum Zeitpunkt des Absturzes aktiv war.


DebugView - Verwendung

Mit dem Mauszeiger über die gewünschte Information in der folgenden Abbildung gehen.
Mit einem LinkeMausklick wird die Information dazu angezeigt.

Open... Strg+O - Symbol Save Strg+S - Symbol Log to File... Strg+G - Symbol File Minimize to tray New Window... Open... Strg+O Save Strg+S Save As... Log to File... Strg+G Log to File As... Print... Strg+P Print Range... Process Crash Dump... Exit Capture Events Strg+E - Symbol Capture Kernel Strg+K - Symbol Edit Append Comment Strg+I Copy Strg+C History Depth... Strg+H Font... Find... Strg+F Filter/Highlight... Strg+L Clear Display Strg+X Passthrough Kernel - Symbol Capture Win32 Strg+W - Symbol Capture Capture Win32 Strg+W Capture Kernel Strg+K Enable Verbose Kernel Output Pass-Through Capture Events Strg+E Log Boot Clear Display Strg+X - Symbol Auto Scroll Strg+A - Symbol Clock Time Strg+T - Symbol Options Win32 PIDs Force Carriage Returns Clock Time Strg+T Show Milliseconds Hide Toolbar Strg+B Auto Scroll Strg+A Always On Top Filter/Highlight... Strg+L - Symbol History Depth... Strg+H - Symbol Menü: Computer Connect... Strg+R Connect Local Disconnect Liste der verbunden Computer: ... (local) Find... Strg+F - Symbol Menü: Help Help... F1 = Aufruf dieser Hilfe About = Version, Kopierrechte, www-Adresse


DebugView starten

Starten Sie einfach das Programm Dbgview.exe. Es werden sofort die Debug-Ausgaben angezeigt. Sollen Debug-Ausgaben im Kernel-Modus unter Win NT/2k erfaßt werden, wird die entsprechende Berechtigung zum Laden von Treibern benötigt (= das "load driver" privilege = meist Administratorrechte).

Mit den Menüs, Schnelltasten, oder Symbolleisten-Knöpfen kann: die Anzeige bereinigt werden, die angezeigten Daten in eine Datei gespeichert werden, die Ausgabe durchsucht werden und der Schriftstil geändert werden. Außerdem kann zwischen Win32- oder Kernel-Debug-Ausgaben umgeschalten werden.

Alle Ereignisse werden mit einer fortlaufenden Nummer versehen. Sollte der interne Puffer von DebugView bei sehr vielen und schnell folgenden Debug-Ausgaben erschöpft sein, so zeigt sich dies durch Lücken in der fortlaufenden Nummer.

(Exit): DebugView speichert die letzten Anzeige-Einstellungen (in der Registry): die Position und Größe des Fensters, die Spalten-Breiten, den Schriftstil, die Filter-Einstellung und das Zeitmarken-Format. Beim nächsten Start von DebugView werden genau diese eingestellt und es sieht ganauso aus wie beim letzten Beenden.

Kommando-Zeilen Optionen

DebugView unterstützt eine Reihe von Kommandozeilen-Optionen, mit denen das Start-Verhalten beinflußt werden kann. Einige Optionen werden benötigt für den Start von DebugView auf einem Client-System, daß Debug-Ausgaben über das Netzwerk sendet, um sie in einer weiteren DebugView -Instanz auf einem anderen Computer anzuzeigen. Genauer ist dies im Abschnitt Fern-Beobachtung vorbereiten beschrieben. Andere Optionen verändern das Verhalten von DebugView, wenn es für die Anzeige der Debug-Ausgaben gestartet wird. Dies ist vorteilhaft, falls DebugView aus einer Batch-Datei gestartet werden soll oder bei der Ausführung eines Anmeldescripts Debug-Ausgaben erfaßt werden sollen. Alle verfügbaren Optionen werden angezeigt, wenn DebugView mit der Kommando-Zeilen Option /? gestartet wird.

Im Server Modus werden folgende Kommando-Zeilen Optionen unterstützt:

dbgview [/t] [/f] [/l ProtokollDatei [/a] [[/m nnn [/w]] | [/n [/x]]] [/h nn]] [ProtokollDatei]

Mit der Option /f wird der Bestätigungs-Dialog für die Filtereinstellungen übersprungen, falls Filtereinstellungen bei der vorherigen Ausführung vorgenommen wurden.

Die /t Option startet DebugView im System-Tray, was schneller ist. Mit der RechtenMaustaste auf das Icon erscheinen entsprechende Einstellungen und ein Doppelklick auf selbiges Icon öffnet DebugView. Eine genauere Beschreibung ist im Abschnitt im System-Tray ausführen zu finden.

Die /l Option weist DebugView an die Debug-Ausgaben sofort mit dem Start in die angegebene ProtokollDatei zu schreiben. Mit der /a Option wird die Ausgabe an eine evtl. bereits existierende ProtkollDatei angehängt (a=append), statt sie zu überschreiben. Dabei kann mit der /m Option die max. Größe der ProtokollDatei in Mega-Byte begrenzt werden. Ergänzend bewirkt die Option /w , daß bei Erreichen der max. Größe die ProtokollDatei wieder von vorn befüllt wird (w=wrap). Beim /n Schalter erstellt DebugView eine neue Protokoll-Datei mit dem Datum des jeweiligen Tages im Dateinamen. Wird zusätzlich /x angegeben, so wird die Anzeige mit Erstellung einer neuen Protokoll-Datei gelöscht/bereinigt.

Der /h Schalter bestimmt die Historien-Tiefe, das ist die Anzahl der letzten angezeigten Debug-Ausgabe-Zeilen in der DebugView-Anzeige. Dieser Schalter ist gleichbedeutend mit dem Menü Edit → History-Depth, was in Speichern, Drucken und Protokollieren genauer beschrieben ist.


Kommando-Zeilen Optionen

Kommando-Zeilen Optionen / Parameter

Alle verfügbaren Optionen werden angezeigt, wenn DebugView mit der Kommando-Zeilen Option /? gestartet wird:

You can direct DebugView to run as a client that sends output to an
instance running on another computer with the following command-line syntax:

Client usage: dbgview [/c [/t] [/s] [/g] [/e]]

/c Start in client mode
/t Start minimized in the tray
/g Capture global Win32 output
/s Client silent mode - no window is displayed
/e Client notifies you when connection to server is broken

The following command-line syntax starts DebugView in server mode:

Server usage: dbgview [/t] [/f] [/c[n]] [/v[n]] [/l Logfile [/a] [[/m nnn [/w]] ] | [/n [/x]]] [/h nnn] [LogFile]

/t Start minimized in the tray
/f No filter promt
/c Use clock time (/c) or elapsed time (/cn)
/l Log output to the specified file
/m Limit log file to size (in MB)
/a Append output to log file it exists
/w Wrap to the start when the log file reaches max
/n Create a new log file every day
/x Clear display on new log file
/h Set history depth to specified size
/v Enable verbose kernel capture with /v and disable with /vn (XP and higher) Specify a log file to load it.

Registry

Für die Anerkennung der EULA (=End User License Agreement = Endbenutzer-Nutzungs-Vereinbarung) kann auch der Kommando-Zeilen Schalter /accepteula genutzt werden. Allerdings erscheint dann obiges Fenster mit den möglichen Kommando-Zeilen Optionen/Parameter. Diese Anerkennung erscheint nur einmal, weil die Zustimmung in der Registry unter

[HKEY_CURRENT_USER\Software\Sysinternals\DbgView]
"EulaAccepted"=dword:00000001

bzw.

[HKEY_CURRENT_USER\Software\Sysinternals\DebugView]
"EulaAccepted"=dword:00000001

"gemerkt" wird.

siehe auch:

DebugView starten - Kommando-Zeilen Optionen , Fern-Beobachtung vorbereiten


Debug-Ausgaben erfassen

Allgemeine Erfassung

Allgmein wird die Erfassung (=Capture) der Debug-Ausgaben in DebugView über die Modi Erfassung-An und Erfassung-Aus gesteuert. Dies wird gesteuert mit dem Symbolleisten-Knopf 'Lupe' zur Erfassungs-Modi Steuerung , oder dem Menü Capture → Capture Events , oder mit der Tasten-Kombination Strg+E . DebugView erfaßt keinerlei Debug-Ausgaben, wenn es im Modus Erfassung-Aus ist. Die Stati Capture Win32 und Capture Kernel legen fest, welche Debug-Ausgaben (evtl. jede) erfaßt werden, wenn Erfassung-An ist.

Capture Win32 - Debug-Ausgabe-Modus

Sollen durch DebugView Debug-Ausgaben von Win32-Programmen, die mit dem Aufruf von OutputDebugString erzeugt wurden, erfaßt werden, so kann dies aktiviert werden mit: dem Symbolleisten-Knopf 'Capture Win32' Debug-Ausgaben von OutputDebugString erfassen , oder mit dem Menü Capture → Capture Win32 , oder über die Tasten-Kombination Strg+W .
Wenn die Win32 PID Option aktiviert ist (im Menü Options → Win32 PIDs) , wird jeder Zeile einer Win32 Debug-Ausgabe die Prozeß-Information, die diese Ausgabe erzeugte, voran gestellt. Auf einem Windows NT/2K-System ist dies die Prozeß-ID des Prozesses in Klammern am Beginn der Win32 Debug-Ausgaben-Zeile. Auf einem Win9x-System ist dies der Prozeß-Name des Prozesses in Klammern am Beginn der Win32 Debug-Ausgaben-Zeile.

Wenn DebugView in einer "remote logon session" auf einem Windows 2000 Terminal Service-System ausgeführt wird, ergänzt DebugView im Capture den Eintrag Capture Global Win32 . Während der Capture Win32 Menü-Eintrag und sein Symbolleisten-Knopf die Erfassung der Debug-Ausgaben in DebugView's lokaler Sitzung aktiviert bzw. deaktiviert, wird mit dem Capture Global Win32 Menü-Eintrag die Erfassung der Debug-Ausgabe in der Terminal-Sitzung aktiviert bzw. deaktiviert. Der Win32 Service läuft in der Konsolen-Sitzung, so daß dieser Eintrag die Erfassung der Debug-Ausgaben auch erfassen läßt, wenn DebugView in einer anderen "logon session" gestartet wird.

Capture Kernel - Debug-Ausgabe-Modus

DebugView kann für die Erfassung von Geräte-Treiber- und/oder Windows-Kernel- Debug-Ausgaben konfiguriert werden mit: Menü Capture → Capture Kernel , oder dem Symbolleisten-Knopf Capture Kernel , oder mit der Tastenkombination Strg+K . Die Prozess-IDs werden im Kernel-Modus nicht ausgegeben, weil diese Ausgaben typischer-weise nicht Prozess-Kontext-bezogen sind.

Auf Windows NT/2K Systemen ist der Kernel-Modus nur möglich, wenn der Benutzer, der DebugView startet das "load driver privilege" hat. Hat der Benutzer dieses Privileg nicht, stellt DebugView den Kernel-Modus und pass-through-Modus nicht zur Verfügung (Menü, Knopf und Tasten-Kombination).

Der Menü-Eintrag Enable Verbose Kernel Output ist leider nicht in der engl. Hilfe weiter beschrieben. Scheint erst seit Version 4.74 dabei zu sein. Nach kleiner www-Rechersche soll er Probleme auf WinXP SP2, WinVista bzw. 64Bit Systemen beheben, wenn diese im kernel-mode nicht funktionieren bzw. keine Debug-Ausgaben liefern. Dieser Menü-Eintrag ist auch nur mit einem Häkchen zu versehen (zu aktivieren), wenn bereits Capture Kernel aktiviert ist.

Unter Windows NT/2K begründen sich die Win32 Debug-Ausgabe und die Kernel-Modus Debug-Ausgabe auf zwei verschiedenen Quellen. Deswegen erfaßt DebugView die beiden Ausgaben in seperaten Puffern und verbindet die Ausgaben im Anzeige-Fenster gemäß ihrer fortlaufenden Nummer. Dies bedeutet zwar, daß die Reihenfolge der Kernel-Modus- und Win32- -Ausgaben korrekt repräsentiert wird, aber die Aktualisierung solcher Information könnte nicht fortlaufend sein. Dies ist der Grund, warum die fortlaufenden Nummern 8-stellig sind (mit führenden 0-en).

Pass-Through - Debug-Ausgabe-Modus

DebugView kann so konfiguriert werden, daß es die kernel-mode Debug-Ausgaben an einen kernel-mode Debugger weiter-/durch-reicht oder diese "verschluckt". Zwischen beiden Modi wird umgeschalten mit dem Menü Capture → Pass-Through oder dem Symbolleisten-Knopf pass-through mode (=Durchreiche-Modus) im kernel-mode . Der pass-through mode (=Durchreiche-Modus) ermöglicht es die kernel-mode Debug-Ausgaben sowohl im Ausgabe-Puffer eines konventionellen kernel-mode Debuggers wie auch gleichzeitig in DebugView zu betrachten.

Kommentare einfügen

Kommentare können über das Menü Edit → Append Comment oder mit der Tasten-Kombination Strg+I in das Ausgabe-Protokoll eingefügt werden. Die Kommentare werden in die aktuell sichtbare Ausgabe eingefügt. Nach Eingabe des Kommentars wird dieser mit der darauffolgender ENTER-Taste übernommen. Der Kommentar-Dialog kann nach Eingabe des Kommentars verworfen werden.

die Anzeige bereinigen

Ein Programm, daß Debug-Ausgaben erzeugt, kann durch die Ausgabe von "DBGVIEWCLEAR" die Anzeige von DebugView bereinigen (löschen/leeren). Dies funktioniert auch, wenn es als Kommentar eingegeben wird.
siehe auch: Anzeige bereinigen


Suchen, Filtern, Hervorhebungen und Ausgabe einschränken

DebugView bietet mehere Möhlichkeiten die interessierenden Debug-Informatinen zu durchsuchen, zu filtern und die Anzahl der Debug-Ausgaben zu begrenzen.

Anzeige bereinigen

Das Ausgabe-Fenster kann zurückgesetzt werden mit dem Menü Edit → Clear Display , oder dem Symbolleisten-Knopf Ausgabe-Fenster bereinigen , oder mit der Tasten-Kombination Strg+X . Dies setzt auch die fortlaufende Nummer auf 0 zurück.
siehe auch: die Anzeige bereinigen

Suche

Der Such-Dialog wird mit der Tasten-Kombination Strg+F , oder mit dem Symbolleisten-Knopf [image] , oder über das Menü Edit → Find aufgerufen. Bei Übereinstimmung markiert DebugView die entsprechende Zeile und scrollt zu dieser, wenn die Zeile nicht im sichbaren Bereich ist. Mit der F3-Taste wird die nächste Übereinstimmung angezeigt.

Filtern

Eine andere Möglichkeit ausgewählte Informationen zu erhalten, ist DebugView's Filter-Möglichkeit. Der Filter-Dialog wird aufgerufen über das Menü Edit → Filter/Highlight... , oder mit dem Symbolleisten-Knopf Aufruf des Filter-Dialoges , oder mit der Tasten-Kombination Strg+L .
Der Dialog enthält zwei Eingabefelder: include und exclude (= einschließlich und ausschliessen). Im Feld include ist die Teil-Zeichenkette einzugeben, die bei Übereinstimmung mit der Debug-Zeile angezeigt werden soll. Im Feld exclude ist die Teil-Zeichenkette einzugeben, die bei Übereinstimmung mit der Debug-Zeile nicht angezeigt werden soll. In beiden Felder können mehere Teil-Zeichenkette getrennt durch ; (Semikolon) eingegeben werden. Soweit nicht speziell nach Leerzeichen gesucht werden soll, sind diese nicht einzugeben. Der Filter unterscheidet nicht in der GROSS/klein-Schreibung und es kann * (Stern) als Platzhalter verwendet werden.

Zum Beispiel soll DebugView alle Debug-Zeilen mit "error" und "abort" anzeigen, aber nicht solche, die "gui" enthalten, so ist
im include-Feld "*error*;*abort*" (ohne Hochkommata) und
im exclude-Feld "*gui*" (ohne Hochkommata) einzugeben.
Sollen hingegen nur Debug-Zeilen angezeigt werden, die mit "MeinProgramm:" beginnen und mit "ausgefuehrt" enden, dann kann dies mit dem Platzhalter im include-Filter erfolgen: "MeinProgramm:*ausgefuehrt" (ohne Hochkommata).

Hervorhebungen

Eine andere Art der Filterung sind DebugView's Hervorhebungen (=Highlight). Soll DebugView bestimmte Debug-Ausgabe-Zeilen farblich hervorheben, so sind entsprechende Hervorhebungs-Filter (=Highlight) einzugeben. DebugView ermöglicht die Eingabe von 20 Hervorhebungs-Filtern. Bei jedem Hervorhebungs-Filter kann die Vordergrund- (Text-) -Farbe und die Hintergrund-Farbe über Colors individuell angepasst werden. Die Syntax der Hervorhebungs-Filtern ist die gleiche wie bei den include- und exclude-Filtern.

Wenn z.B. folgende Hervorhebungs-Filter eingeben werden, dann...
Beispiel Hervorhebungs-Filter
... sieht das Beispiel-Protokoll folgendermaßen aus:
Ausgabe-Fenster mit Beispiel Hervorhebungs-Filter

Speichern und Zurücksetzen der Filter

Mit dem Save -Knopf kann die aktuelle Filter- und Hervorhebungs-Einstellung in einer *.ini Datei gespeichert werden und mit dem Load -Knopf eine vorhandene Filter- und Hervorhebungs-Einstellung geladen werden. Es werden die Einstellungen bei include , exclude und die 20 Hervorhebungs-Filter (=Highlight) gespeichert bzw. geladen inclusiv der Farbeinstellungen.

Anzahl der letzten Protokoll-Zeilen

Letzlich kann noch die Anzahl der letzten Debug-Ausgabe-Zeilen begrenzt werden. Dies kann eingestellt werden über das Menü Edit → History-Depth oder über den Symbolleisten-Knopf [image] oder die Tasten-Kombination Strg+H. Die Eingabe von 5 bei History Depth gefolgt von Apply (=Anwenden) würde das Beispiel-Protokoll so ändern:
Beispiel-Protokoll mit 'History Depth'=5

Sollen alle Debug-Ausgabe-Zeilen angezeigt werden, so ist 0 (Null) bei History Depth einzugben.


Speichern, Drucken und Protokollieren

DebugView läßt sowohl das Speichern wie auch das Ausdrucken der erfaßten Debug-Ausgaben zu.

speichern der Ausgabe

Der Inhalt des DebugView-Fensters kann in einer Datei mit der Datei-Erweiterung .log gespeichert werden, über die Menüpunkte File → Save oder File → Save As , oder mit der Tasten-Kombination Strg+S .

Markierte Debug-Ausgabe-Zeilen können mit Edit → Copy oder mit der Tasten-Kombination Strg+C in die Zwischenablage kopiert werden.

in eine Datei protkollieren

Um die Anzeigen von DebugView in einer Datei mit zu protokollieren, sind die Menüpunkte File → Log to File oder File → Log to File As aufzurufen, oder der Symbolleisten-Knopf Symbolleisten-Knopf: mit-protokollieren anzuklicken, oder es ist die Tasten-Kombination Strg+G zu drücken.
Darauf ist der Pfad/Dateiname der ProtokollDatei (nach "Log File") anzugeben und die max. Größe der ProtokollDatei, entweder
unbegenzt (= Unlimited Log Size) , oder
unbegrenzt, aber jeden Tag eine neue ProtokollDatei (= Create New Log Every Day) , oder
begrenzt (= Limit Log Size ; Max Log Size) .

Ergänzend kann angewiesen werden, daß mit jeder neuen ProtokollDatei die Anzeige in DebugView bereinigt wird (= Clear Display on New Log). Damit kommt es nicht zum internen Pufferüberlauf und Lücken in der Protokollierung.

Beziehungsweise kann angeben werden, ob die Protokollierung an eine bereits existierende gleichnamige ProtokollDatei angehängt werden soll (= Append) , satt sie zu überschreiben, oder ob die ProtokollDatei wieder ab der ersten Zeile befüllt werden soll, wenn sie ihre max.Größe erreicht hat (= Wrap).

Wurde die Create New Log Every Day Option gewählt, so bgrenzt DebugView die ProtokollDatei-Größe nicht, aber es wird jeden Tag eine neue ProtokollDatei ergänzt mit dem Tages-Datum erstellt.

Wenn die Protokollierung aktiv ist, sieht der Symbolleisten-Knopf so aus: Protokollierung ist aktiv . Um die Protokollierung in die ProtokollDatei zu beenden, ist einfach dieser Symbolleisten-Knopf anzuklicken oder das Menü File → Log to File , oder die Tasten-Kombination Strg+G . Wenn die max.Größe der ProtokollDatei erreicht ist, wird die Protokollierung gestoppt und der Symbolleisten-Knopf ändert sich in Protokollierung gestoppt .

Wenn die Debug-Ausgabe von mehreren entfernten Computern beobachtet wird und die Protokollierung in eine ProtokollDatei verfügbar (aktiv) ist, werden alle Ausgaben in die angegebene ProtokollDatei geschrieben. Zur Unterscheidung, welche Debug-Ausgabe von welchem Computer kommt, wird am Zeilen-Beginn der Debug-Ausgabe jeweils der Computer-Name, von dem die Debug-Ausgabe kommt, ergänzt.

ausdrucken

Mit den Menüs File → Print oder File → Print Range kann der Inhalt der Anzeige auf einen Drucker ausgedruckt werden. Soll nur ein bestimmte Bereich ausgedruckt werden, ist Print Range auszuwählen. Bei nur Print werden alle Ausgaben gedruckt. Die Tasten-Kombination Strg+P entspricht dem Menü File → Print .

Im Print Range -Dialog kann angeben werden, ob die fortlaufende Nummer (= Print sequence) und/oder die Zeitmarke (= Print timestamp) wie in der Debug-Ausgabe mit gedruckt werden soll oder eben nicht. Durch Weglassen dieser Angaben, soweit sie nicht benötigt werden, wird Seitenplatz gespart. Die im Dialog gewählten Einstellungen, gelten für alle folgenden Druck-Operationen.

Um unnötige und verwirrende Zeilenumbrüche auf dem Ausdruck zu vermeiden, für den Fall, daß die Ausgabe-Zeile länger ist als die ausdruckbare Seitenbreite, ist das Querformat für's Papierformat beim verwendeten Drucker sehr zu empfehlen.

eine Ausgabe öffnen

Um eine früher mit DebugView gespeicherte ProtokollDatei anzuzeigen/zu öffnen, ist das Menü File → Open bzw. die Tasten-Kombination Strg+O zu wählen.


Einstelllungen

Einstellungen

There are a number of options that let you adjust several characteristics of DebugView, including the way that it behaves and looks.

Timing Format

DebugView displays time stamps of captured debug output in one of two formats: as clock-time (the time of day), or as relative time. When displaying relative time DebugView represents the time of a debug output record as the difference between its timestamp and the timestamp of the first record in the display. This mode is helpful when you debug timing-related problems. Use the Options|Clock Time menu item, [image] toolbar button, or Ctrl+T hot-key sequence to toggle between clock time and relative time modes.

When DebugView is in clock-time mode you can select the Options|Show Milliseconds menu item to have DebugView show timestamps that include millisecond resolution.

Force Carriage Returns

The default behavior of DebugView is to buffer output strings in an internal buffer DebugView maintains until a carriage-return is encountered or the buffer overflows. This allows applications and drivers to build output lines with multiple invocations of debug output functions.

Select Options|Force Carriage Returns to cause DebugView to display every string passed to a debug output function on a separate output line, regardless of whether the string is terminated with a carriage return.

Auto Scroll

Use the Options|Auto Scroll menu item, [image] toolbar button, or Ctrl+A hot-key sequence to toggle DebugView between auto-scroll and non-auto scroll modes. When in auto-scroll mode DebugView will always keep the most recent debug output visible in the display window.

Hiding the Toolbar

You can gain more display space by hiding the DebugView toolbar. Use the Options|Hide Toolbar menu item or Ctrl+B hot-key sequence to toggle the toolbar's presence. DebugView will remember the toolbar state when you exit it and restore the same state the next time you start it.

Win32 PIDS

Setting this option using the Options|Win32 PIDs menu item will cause DebugView to prefix Win32 debug output with either the process ID (Windows NT/2K) or the process name (Windows 9x) of the process that generated the output. Deselecting this option can save screen space if you are not interested in what process generates Win32 output.

Changing the Font

Use the Edit|Font menu entry to open a font-selection dialog where you can choose a font that DebugView will use in its output window.

Always on Top

To keep DebugView as the top-most window on the desktop, use the Options|Always On Top menu item. Selecting the menu item a second time will toggle off the always-on-top mode.


im System-Tray ausführen

Sollen zwar Debug-Ausgaben mit DebugView erfaßt werden, aber kein Platz auf dem Bildschirm oder in der Taskleite (=Task Bar) eingenommen werden, so ist der Start im System-Tray (="Bereich neben der Uhr") nützlich. Wird DebugView über das Menü Edit → Minimize to Tray ins System-Tray minimiert, kann es mit Doppklick auf dessen System-Try-Icon DebugView's System-Try-Icon wieder geöffnet werden. Der Menü-Eintrag Minimize to Tray wechselt dann zu Minimize to Task Bar. Erst wenn DebugView aus der "Task Bar" (=Taskleiste) geöffnet wird, steht der Menü-Eintrag Minimize to Tray wieder zur Verfügung. Entsprechend der letzte Auswahl Minimize to Tray oder Minimize to Task Bar reagiert oben rechts das Fenster-Symbol für "Minimieren".

Das System-Tray-Icon DebugView's System-Tray-Icon farbig von DebugView ist farbig, wenn die allgemeine Erfassung der Debug-Ausgaben aktiv ist. Ist diese Erfassung inaktiv, dann ist das System-Tray-Icon DebugView's System-Tray-Icon ausgegraut von DebugView ausgegraut. Ein RechteMausKlick auf das System-Tray-Icon zeigt die Kopie des Menüs Capture an, in dem z.B. mit Capture Events die allgemeine Erfassung aktiviert bzw. deaktiviert werden kann.


Beim Booten protokollieren

Beim Booten protokollieren (nur bei NT/2K/2K3/XP/Vista)

Unter Windows NT/2K/2K3/XP/Vista kann DebugView die kernel-mode Debug-Ausgaben, die während des Boot-Prozesses erzeugt werden, erfassen. Dazu muß der Menü-Eintrag Capture → Log Boot aktiviert werden. Dieser steht zur Verfügung, wenn der lokale Computer ein NT/2K/2K3/XP/Vista -System ist und das DebugView-Fenster mit dem lokalen Computer verbunden ist. DebugView quittiert die Aktivierung mit der Meldung "DebugView has been configured to buffer kernel debug output at the next boot." .

Wenn der Menü-Eintrag Log Boot aktiviert ist, protokolliert DebugView beim nächsten Boot-Prozeß bis zu 1MB die Debug-Ausgaben.
You can view the buffered debug output by connecting DebugView to the system, at which time the buffering ceases.


Speicher-Abbild eines Absturzes

Speicher-Abbild eines Absturzes (nur bei NT/2K/2K3/XP/Vista)

Unter Windows NT/2K/2K3/XP/Vista kann das System so konfiguriert werden, daß bei einem System-Absturz noch ein Abbild des pysikaischen Speichers in einer sogenannten "dump"-Datei gespeichert wird. Aus diesem Abbild - meist die memory.dmp - kann DebugView die darin enthaltenen Debug-Ausgaben der kernel-mode Treiber zum Zeitpunkt des Absturzes lesen. Wenn Ihr Treiber mit ausreichend vielen Debug-Ausgaben programmiert ist, dann kann ein Benutzer diese Ausgaben zur Analyse weiterreichen, satt des gesamten Speicher-Abbildes. Zum Zeitpunkt des Absturzes muß DebugView allerdings der kernel-mode in der Ausgaben-Erfassung aktiv sein, damit diese Möglichkeit funktioniert.

Zum Analysieren der "dump"-Datei ist das Menü Edit → Process Crash Dump... zu verwenden. DebugView durchsucht die Datei nach Debug-Ausgabe-Puffer. Wurden Debug-Ausgaben gefunden, wird nach dem Protokoll-Datei-Namen gefragt, in dem diese gespeichert werden sollen. Diese gespeicherte Protokoll-Datei kann dann mit File → Open in DebugView angezeigt werden.

unter Windows XP - Speicher-Abbild konfigurieren

Start → Einstellungen → Systemsteuerung → System → Erweitert , Einstellungen → Debuginformationen speichern ...

Win XP - erweiterte System-Einstellungen Win XP - Debuginformationen speichern

unter Windows 2K - Speicher-Abbild konfigurieren

Start → Einstellungen → Systemsteuerung → System → Erweitert , Starten und Wiederherstellen... → Debuginformationen speichern ...

Win 2K - erweiterte System-Einstellungen Win 2K - Debuginformationen speichern


Fern-Beobachtung

Fern-Beobachtung vorbereiten

DebugView has advanced remote monitoring capabilities that allow you to view debug output generated on remote systems from a central location. The remote systems must be accessible via TCP/IP. DebugView lets you monitor multiple remote systems simultaneously, using a hot-key or a menu selection to switch between them. If both the computer you are running the DebugView GUI on (the server) and the system you want to monitor (the client) are running Windows NT/2K, and they are in the same Network Neighborhood, then DebugView will automatically install its client software on the client. For all other combinations you must manually install and start DebugView's client software on the client.

Manual Client Startup

If either the server or the client is running Windows 9x, or the server and client are not mutually accessible via the Windows Network Neighborhood, then you must manually start the DebugView client on the client computer. To do this, run the DebugView program on the client and specify "/c" as a command-line argument:

dbgview /c [/t] [/s] [/e] [/g]

The DebugView client window will appear and indicate that it is waiting for a connection from the DebugView server.

After you have started the DebugView client use the Computer|Connect menu item or Ctrl+R hot-key sequence of the DebugView server to open a computer connection dialog. In the dialog enter the name or IP address of the client computer. If the client computer is in the server's Network Neighborhood you can also use the browse button in the dialog to open a view of the Network Neighborhood and visually select the client computer.

If you want to run the client in a "headless" mode, specify "/s" (silent) in addition to the "/c" command-line argument when you start the DebugView client. This will cause the DebugView client to not display a window, and to remain active until the current user logs out, silently connecting with and disconnecting from DebugView servers.

Use the "/e" option when starting the client if you want it to notify you when server connections break. When a server connection is broken and this switch is specified you must close the notification window before the client will accept further connections.

The "/t" option has the DebugView client run in the tray. The client presents a gray tray icon when there's no connection to a server and a colored icon when a server is connected. You can open the client window by double clicking the tray icon and store it back in the tray by minimizing the client window.

If you are running DebugView from a non-console login on a system with Terminal Services you can direct the DebugView client to capture global (console) debug output with the /g switch.

If you specify "/?" DebugView will tell you its supported command-line options.

Automatic Client Startup

Automatic startup is not supported on the Alpha.

If both the client and server are running Windows NT/2K and are in the same Network Neighborhood, there is no need for you to install the DebugView client on the client computer. Instead, specify the client computer name or address in the connection dialog as you would if you were connecting to a manually started DebugView client, and DebugView will automatically install and start the DebugView client on the client computer. When you disconnect from the client DebugView uninstalls its client software for you. In case you want to clean up client files yourself after a non-graceful exit of the server, the files DebugView installs on the client are placed in <winnt>\system32 and include dbgvsvc.exe and dbgv.sys.

The DebugView server will always attempt an automatic install, and if that fails it falls back on trying to connect to a manually installed client.


Managing Connection Views

When a remote capture session is established DebugView creates a new computer view for the session. The active computer view is the one that has captured output displayed in the DebugView GUI, and is identified on the DebugView title bar. To switch from one computer view to another select the desired view, which is listed by computer name, in the Computer menu. Alternatively, you can use Ctrl+Tab to cycle through the computer views.

The state of global capture, Win32 debug capture, kernel capture, and pass-through for a newly established remote session are all adopted from the current settings of the local view (the view of the computer on which the DebugView is executing). Changes you make to these settings only apply to the active computer view.

Disconnecting a Remote Session

When you are through capturing debug output from a remote system, make the view for the computer from which you want to disconnect the active view and then use the Computer|Disconnect menu entry to close the session.

When you exit DebugView it saves the state of the local view, including the width of the display columns, and DebugView applies those settings the next time you start it.


Mehrere Fenster

Verwalten meherer Fenster

DebugView läßt das Öffnen/Starten von mehreren DebugView-Fenstern/-Instanzen auf dem gleichen Computer zu und ermöglicht so die Erfassung der Debug-Ausgabe von verschiedenen Computern in entsprechend verschiedenen Fenster. Dies stellt eine Alternative dar zu: Mit einer DebugView-Instanz die Debug-Ausgaben von mehreren verbundenen Computern erfassen, was einen unübersichtlichen Mix von Debug-Ausgaben ergeben kann.

Standardmäßig wird mit dem ersten Aufruf/Start von DebugView sofort mit dem lokalem Computer verbunden. Das bedeutet, daß die Debug-Ausgaben des lokalen Computers erfaßt werden. Weitere Instanzen bzw. Fenster von DebugView können mit dem weiteren Aufruf der dbgview.exe oder über das Menü File → New Window... erzeugt werden.

Mit dem Menü Computer → Connect Local wird DebugView mit dem lokalem Computer verbunden und mit dem Menü Computer → Disconnect wird die aktive Verbindung zum lokalen Computer wieder getrennt. Zu beachten ist, daß immer nur eine DebugView-Instanz gleichzeitig mit irgendeinem Computer verbunden sein kann.

1. und 2. Instanz von DebugView bzw. 'New Window...'

Werden mehere DebugView-Instanzen/-Fenster über den Aufruf der dbgview.exe erzeugt, so wird die Konfiguration der letzten geschlossenen/beendeten DebugView-Instanz voreingestellt. Wird hingegen das Menü File → New Window... dazu verwendet, so wird die Konfiguration des DebugView's verwendet aus dem dieses Menü aufgerufen wurde.


Ein Problem melden

Sollten Probleme während der Ausführung von DebugView auftreten, ist bitte erst auf der Web-Site technet.microsoft.com/en-us/sysinternals/bb896647.aspx nach einer Aktualiserung zu sehen. Damit ist evtl. das Problem schon behoben. Sollte auch mit der aktuellsten Version von DebugView das Problem weiter bestehen, dann ist bitte ein ausführlicher Bericht, incl. der System-Konfiguration und unter welchen Bedingungen dieser Fehler sicher zu reproduzieren ist (evtl. kleine Schriff-für-Schritt Anleitung), in englischer Sprache zu senden an:

mark@sysinternals.com


DebugView für Windows

DebugView for Windows v4.75

By Mark Russinovich

Published: August 8, 2008

Introduction

DebugView is an application that lets you monitor debug output on your local system, or any computer on the network that you can reach via TCP/IP. It is capable of displaying both kernel-mode and Win32 debug output, so you don't need a debugger to catch the debug output your applications or device drivers generate, nor do you need to modify your applications or drivers to use non-standard debug output APIs.

DebugView works on Windows 95, 98, Me, NT4, 2000, XP, Windows Server 2003, .NET Server, Windows for x64 processors and Windows Vista.

dbgv98.zip oder DebugView9x.zip für Win9x/Me
dbgvnt.zip oder DebugViewNt.zip für Win NT/2K/XP/2K3

DebugView Capture

Under Windows 95, 98, and Me DebugView will capture output from the following sources:

  • Win32 OutputDebugString
  • Win16 OutputDebugString
  • Kernel-mode Out_Debug_String
  • Kernel-mode _Debug_Printf_Service

Under Windows NT, 2000, XP, Server 2003 and Vista DebugView will capture:

  • Win32 OutputDebugString
  • Kernel-mode DbgPrint
  • All kernel-mode variants of DbgPrint implemented in Windows XP, .NET Server and Server 2003

DebugView also extracts kernel-mode debug output generated before a crash from Window's NT/2000/XP crash dump files if DebugView was capturing at the time of the crash.

DebugView Capabilites

DebugView has a powerful array of features for controlling and managing debug output.

v4.5 (05.10.2005) - v4.6 (11.04.2006) - v4.61 (17.07.206) - v4.62 (20.07.2006) - v4.63 (15.12.2006) - v4.64 (8/1/2007,23.01.2007) - v4.70 (18.08.2007) - v4.72 - v4.73 (11/9/2007,23.11.2007) - v4.74 (27. Nov 2007,12.12.2007)

Features new to version 4.6: - April 10, 2006

  • Support for Windows Vista 32-bit and 64-bit

Features new to version 4.5:

  • Support for log-file rollover: To better support long-running captures, DebugView can now create a new log file each day, optionally clearing the display when doing so.

Features new to version 4.4:

  • Support for Windows Server 2003 64-bit Edition and Windows XP 64-bit Edition for x64:DebugView now captures kernel-mode debug output on 64-bit versions of Windows.
  • Clock-time toggle: you can now toggle between clock time and elapsed time modes.

Features new to version 4.3: - July 20, 2004 v4.3 - August 17, 2004 v4.31 - April 19, 2005 v4.32

  • Support for Windows XP SP2: DebugView now captures kernel-mode debug output on Windows XP SP2.
  • More highlighting filters: Many people have asked for more highlighting filters.
  • Log file wrapping: A new log file option has DebugView wrap around to the start of the log file when the specified size limit is reached.
  • Larger buffers: Larger Win32 and kernel-mode buffers lessen the chance of dropped debug output.
  • Clear-output string: When DebugView sees the special debug output string "DBGVIEWCLEAR" it clears the output.
  • Client minimize-to-tray: You can now run the client minimized in the tray.

Features new to version 4.2: - September 3, 2002 v4.2 - December 29, 2002 v4.21

  • Kernel-hook bug fixed: DebugView sometimes mistakenly report that it couldn't hook kernel-mode debug output on Windows XP and Server 2003.
  • Client global-capture option: A new option allows the client to capture console Win32 debug output on Terminal Server systems when run from a non-console session.
  • Filtering improved: Filters can be much longer and now apply to Win32 process IDs when process IDs are included in the output.
  • Crash-dump support improved: Several bugs related to extracting kernel-mode output from crash dumps are fixed and DebugView now loads resulting log files.
  • More highlight filters:DebugView now has 10 highlight filters, up from 5.
  • Insert comments: A new menu item lets you insert comments into output.
  • New switches: New command-line switches allow you to specify history depth and load log files.
  • Better balloon tips: If an output line is wider than the screen its mouse hover balloon tip word wraps.

Features new to version 4.1: - July 9, 2001 v4.13

  • Save and load filters: You can save and load filters, including the highlighting colors.
  • Load saved logs: You can now load a log file back into the DebugView output window.
  • Capture boot-time kernel-mode debug output: Under Windows 2000, you can use DebugView to capture debug output generated by drivers from the earliest point in the boot process.

Features new to version 4.0:

  • Terminal services aware: When you run DebugView in a remote terminal services session you can capture debug output from that session as well as from the console session.
  • Administrators membership optional: The account from which you run DebugView requires no special privileges for capturing Win32 output. If you want to capture kernel-mode output the account requires the "load driver" privilege, which members of the administrators group hold.
  • Multiple hilighting filters: Create up to five differenent highlighting filters to highlight debug output that matches your filters, and even customize the highlighting colors used for each filter.
  • Minimize to tray: You can minimize DebugView to the system tray so that it captures output without taking up screen real-estate.
  • Command-line options: DebugView supports command-line options that allow you to launch it in the system tray and to automatically start logging output to a file.
  • Millisecond timestamps: DebugView's clock-time mode now supports millisecond resolution.

Here is a list highlighting some of DebugView's other features:

  • Remote monitoring: Capture kernel-mode and/or Win32 debug output from any computer accessible via TCP/IP - even across the Internet. You can monitor multiple remote computers simultaneously. DebugView will even install its client software itself if you are running it on a Windows NT4/2000 system and are capturing from another Windows NT4/2000 system in the same Network Neighborhood.
  • Most-recent-filter lists:DebugView remembers your most recent filter selections, with an interface that makes it easy to reselect them.
  • Process ID option: Toggle the display of process IDs for Win32 debug output.
  • Clipboard copy: Select multiple lines in the output window and copy their contents to the clipboard.
  • Log-to-file: Write debug output to a file as its being captured.
  • Printing: Print all or part of captured debug output to a printer.
  • One-file payload:DebugView is implemented as one file.
  • Crash-Dump Support:DebugView can recover its buffers from a crash dump and save the output to a log file so that users can send you the output your Windows driver generated right up to the time of a crash.

The on-line help file describes all these features, and more, in detail.

Installation and Use

Simply execute the DebugView program file (dbgview.exe) and DebugView will immediately start capturing debug output. To run DebugView on Windows 95 you must get the WinSock2 update from Microsoft. Note that if you run DebugView on Windows NT/2000/XP you must have administrative privilege to view kernel-mode debug output. Menus, hot-keys, or toolbar buttons can be used to clear the window, save the monitored data to a file, search output, change the window font, and more. The on-line help describes all of DebugView's features.

Platform Compatibility

Client: Windows Vista, Windows XP (x86 and x64), Windows 2000 Professional, Windows Me, Windows 98, or Windows 95.

Server: Windows Server 2008 (x86 and x64), Windows Server 2003 (x86 and x64), or Windows 2000 Server (x86 and x64).