Untersuchen von Dumpfiles mittels WinDbg

Untersuchen von Dumpfiles mittels WinDbg 1:

TwinCAT 3.1 Build 4026.21 benötigt

Die hier beschriebene Funktion benötigt mindestens TwinCAT 3.1 4026.21

Für das Analysieren von Dumpfiles werden an Taskdumps wie auch Kerneldumps von Windows zusätzliche Informationen hinzugefügt, die die Analyse erleichtern.

Die Analyse kann dabei durch das Tool WinDbg erfolgen, wofür eine Erweiterung bereitgestellt wird, welche folgende Informationen extrahieren kann:

Beckhoff empfiehlt die Verwendung der klassischen WinDbg Version von Microsoft, da mit der Neueren (z.B. aus dem Windows AppStore) gelegentlich unerwünschte Verhalten beobachtet wurden: https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/debugger-download-tools

Die Erweiterung kann durch den folgenden Befehl installiert werden:

tcpkg install TwinCAT.XAE.WinDbgExtension

Sie wird passend installiert, sodass WinDbg diese direkt erkennt.

Nach dem Starten von WinDbg wird die Erweiterung geladen indem in WinDbg eingegeben wird:
.load TcDbgExt

Anschießend steht der Befehl
!tc
zur Verfügung, welcher einen Hilfetext ausgibt, mit den oben beschriebenen Funktionen.

Beispielausgabe

kd> .load TcDbgExt
kd> !tc
Beckhoff TwinCAT WinDBG Extension:
available commands:
!tc list modules
    Lists the above elements of runtime.
    Use -h to get specific information for list.
!tc reload
    Reloads the symbols of all loaded TwinCAT modules.
    The command can operate without XAR debug symbols,
    if TwinCAT.XAR.Realtime 2.0.60 or later is used.
!tc ctx
    restore twincat exception context for twincat bugchecks
(code=BE00XXXX)
    the command can operate without symbols for XAR-Runtime,
    if TwinCAT.XAR.Realtime 2.0.60 or later is used.
!tc wrlog <project name> [--path <path>]
    Save TE1010 TwinCAT 3 Realtime Monitor project with
    recorded data to file(s) with name <project name>    TwinCAT.XAR.Realtime 2.1.1 or above is required
    for this command to work.
!tc help <cmd>
    Print this help text. If <cmd> is set, the help request is    forwared to the given command.