Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Wanneer u een invoegtoepassing voor de analyse-extensie schrijft, schrijft u ook een metagegevensbestand waarin de situaties worden beschreven waarin u uw invoegtoepassing wilt aangeroepen. Wanneer de opdracht !analyze debugger wordt uitgevoerd, worden metagegevensbestanden gebruikt om te bepalen welke invoegtoepassingen moeten worden geladen.
Maak een metagegevensbestand met dezelfde naam als uw analyse-extensie-invoegtoepassing en met de extensie .alz. Als uw invoegtoepassing voor de analyse-extensie bijvoorbeeld de naam MyAnalyzer.dllheeft, moet uw metagegevensbestand MyAnalyzer.alz worden genoemd. Plaats het metagegevensbestand in dezelfde map als de invoegtoepassing voor de analyse-extensie.
Een metagegevensbestand voor een invoegtoepassing voor de analyse-extensie is een ASCII-tekstbestand dat sleutel-waardeparen bevat. Sleutels en waarden worden gescheiden door witruimte. Een sleutel kan elk niet-witruimteteken bevatten. Sleutels zijn niet hoofdlettergevoelig.
Na de sleutel en de volgende witruimte begint de bijbehorende waarde. Een waarde kan een van de volgende formulieren hebben.
Elke set tekens aan het einde van de regel. Dit formulier werkt voor waarden die geen regelafbrekingstekens bevatten.
Belangrijk Als de laatste waarde in het metagegevensbestand een waarde van dit formulier heeft, moet de regel eindigen met een nieuw regelteken.
Een set tekens tussen accolades { }. Het formulier werkt voor waarden die nieuwe regeltekens bevatten.
Een regel die begint met # is een opmerking en wordt genegeerd. Opmerkingen kunnen alleen beginnen waar sleutels worden verwacht.
U kunt de volgende sleutels gebruiken in een metagegevensbestand.
| Sleutelcode | Beschrijving |
|---|---|
| PluginId | Tekenreeks - Identificeert de invoegtoepassing. |
| DebuggeeClass | Tekenreeks: mogelijke waarden zijn Kernel en Gebruiker. Geeft aan dat de invoegtoepassing geïnteresseerd is in het analyseren van alleen kernelmodusfouten of alleen fouten in de gebruikersmodus. |
| BugCheckCode | 32-bits code voor foutcontrole: geeft aan dat de invoegtoepassing geïnteresseerd is in het analyseren van deze code voor foutcontrole. Eén metagegevensbestand kan meerdere codes voor bugcontrole opgeven. |
| Uitzonderingscode | 32-bits uitzonderingscode: geeft aan dat de invoegtoepassing geïnteresseerd is in het analyseren van deze uitzonderingscode. Eén metagegevensbestand kan meerdere uitzonderingscodes opgeven. |
| Uitvoerbare naam | Tekenreeks- Geeft aan dat de invoegtoepassing alleen geïnteresseerd is in sessies waarin dit het actieve uitvoerbare bestand is van het proces dat moet worden geanalyseerd. Eén bestand met metagegevens kan meerdere uitvoerbare namen opgeven. |
| Afbeeldingsnaam | Tekenreeks (String): geeft aan dat de invoegtoepassing alleen geïnteresseerd is in sessies waarbij de standaardanalyse deze bestanden (dll, sys of exe) als foutief beschouwt. De invoegtoepassing wordt aangeroepen nadat de analyse heeft vastgesteld welke afbeelding een fout heeft. Eén metagegevensbestand kan meerdere afbeeldingsnamen opgeven. |
| MaxTagCount | Geheel getal: het maximum aantal aangepaste tags dat de invoegtoepassing nodig heeft. Aangepaste tags zijn andere tags dan de tags die zijn gedefinieerd in extsfns.h. |
Voorbeeld van metagegevensbestanden
In het volgende metagegevensbestand wordt een invoegtoepassing beschreven die geïnteresseerd is in het analyseren van code voor foutcontrole 0xE2. (Vergeet niet dat de laatste regel moet eindigen met een nieuw regelteken.)
PluginId MyPlugin
DebuggeeClass Kernel
BugCheckCode 0xE2
In het volgende metagegevensbestand wordt een invoegtoepassing beschreven die geïnteresseerd is bij het analyseren van bugchecks 0x8, 0x9 en 0xA indien MyDriver.sys als de module die het probleem veroorzaakt wordt beschouwd.
PluginId MyPlugin
DebuggeeClass Kernel
BugCheckCode 0x8
BugCheckCode 0x9
BugCheckCode 0xA
ImageName MyDriver.sys
In het volgende metagegevensbestand wordt een invoegtoepassing beschreven die geïnteresseerd is in het analyseren van uitzonderingscode 0xC0000005 als MyApp.exe het actieve uitvoerbare bestand is van het proces dat wordt geanalyseerd. Bovendien kan de invoegtoepassing zo veel als drie aangepaste tags maken.
PluginId MyPlugin
DebuggeeClass User
ExceptionCode 0xC0000005
ExecutableName MyApp.exe
Hulpprogramma's voor foutopsporing voor Windows bevat een voorbeeld dat u kunt gebruiken om een extensiemodule voor foutopsporingsprogramma's met de naam dbgexts.dllte maken. Deze extensiemodule implementeert verschillende opdrachten voor foutopsporingsprogramma-extensies, maar kan ook fungeren als een invoegtoepassing voor analyse-extensies; dat wil gezegd, er wordt een _EFN_Analyze-functie geëxporteerd. Hier volgt een metagegevensbestand dat dbgexts.dll beschrijft als een invoegtoepassing voor de analyseextensie.
PluginId PluginSample
DebuggeeClass User
ExceptionCode 0xc0000005
ExecutableName cdb.exe
ExecutableName windbg.exe
#
# Custom tag descriptions
#
TagDesc 0xA0000000 SAMPLE_PLUGIN_DEBUG_TEXT {Sample debug help text from plug-in analysis}
#
Zie ook
Een invoegtoepassing voor analyse-extensies schrijven om !analyze uit te breiden