Dela via


Skriva EngExtCpp-tillägg

Tillägget EngExtCpp kan innehålla valfri C++-standardkod. Den kan också innehålla C++-gränssnitten som visas i huvudfilerna engextcpp.h och dbgeng.h, utöver de C-funktioner som visas i rubrikfilen wdbgexts.h. Både dbgeng.h och wdbgexts.h ingår från engextcpp.h.

En fullständig lista över gränssnitt i dbgeng.h som kan användas i ett tilläggskommando finns i Referens för felsökningsmotor.

En fullständig lista över funktioner i wdbgexts.h som kan användas i ett tilläggskommando finns i WdbgExts Functions. Ett antal av dessa funktioner visas i 32-bitarsversioner och 64-bitarsversioner. Vanligtvis slutar 64-bitarsversionerna i "64" och 32-bitarsversionerna har inget numeriskt slut , till exempel ReadIoSpace64 och ReadIoSpace. När du anropar en wdbgexts.h-funktion från ett DbgEng-tillägg bör du alltid använda funktionsnamnet som slutar på "64". Det beror på att felsökningsmotorn alltid använder 64-bitarspekare internt, oavsett målplattform. När du inkluderar wdbgexts.h väljer engextcpp.h 64-bitarsversionen av API:et. Den globala variabeln ExtensionApis som används av WDbgExts-API:et initieras automatiskt vid inmatning till en EngExtCpp-metod och rensas vid avslut.

När ett EngExtCpp-tillägg används med fjärranslutna DbgEng-gränssnitt är WDbgExts-gränssnitten inte tillgängliga och ExtensionApis-strukturen kan nollställas. Om ett EngExtCpp-tillägg förväntas fungera i en sådan miljö bör det undvika att använda WDbgExts-API:et.

Obs Du får inte försöka anropa några DbgHelp- eller ImageHlp-rutiner från någon utökning i felsökaren. Att anropa dessa rutiner stöds inte och kan orsaka en mängd olika problem.