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.
Die EngExtCpp-Erweiterungsbibliothek kann einen beliebigen C++-Standardcode enthalten. Sie kann auch die C++-Schnittstellen enthalten, die in den Headerdateien engextcpp.h und dbgeng.h angezeigt werden, zusätzlich zu den C-Funktionen, die in der Headerdatei "wdbgexts.h" angezeigt werden. Sowohl dbgeng.h als auch wdbgexts.h sind in engextcpp.h enthalten.
Eine vollständige Liste der Schnittstellen in dbgeng.h, die in einem Erweiterungsbefehl verwendet werden können, finden Sie unter Debugger Engine Reference.
Eine vollständige Liste der Funktionen in wdbgexts.h, die in einem Erweiterungsbefehl verwendet werden können, finden Sie unter WdbgExts-Funktionen. Eine Reihe dieser Funktionen wird in 32-Bit-Versionen und 64-Bit-Versionen angezeigt. In der Regel enden die 64-Bit-Versionen in "64", und die 32-Bit-Versionen haben kein numerisches Ende , z. B. ReadIoSpace64 und ReadIoSpace. Beim Aufrufen einer wdbgexts.h-Funktion aus einer DbgEng-Erweiterung sollten Sie immer den Funktionsnamen verwenden, der auf "64" endet. Dies liegt daran, dass das Debuggermodul unabhängig von der Zielplattform immer 64-Bit-Zeiger intern verwendet. Wenn wdbgexts.h eingeschlossen wird, wählt engextcpp.h die 64-Bit-Version der API aus. Die globale ExtensionApis-Variable , die von der WDbgExts-API verwendet wird, wird beim Eintrag in eine EngExtCpp-Methode automatisch initialisiert und beim Beenden gelöscht.
Wenn eine EngExtCpp-Erweiterung mit Remote-DbgEng-Schnittstellen verwendet wird, sind die WDbgExts-Schnittstellen nicht verfügbar, und die ExtensionApis-Struktur kann null sein. Wenn eine EngExtCpp-Erweiterung in einer solchen Umgebung erwartet wird, sollte die Verwendung der WDbgExts-API vermieden werden.
Anmerkung Sie dürfen nicht versuchen, dbgHelp- oder ImageHlp-Routinen aus einer Debuggererweiterung aufzurufen. Das Aufrufen dieser Routinen wird nicht unterstützt und kann zu einer Vielzahl von Problemen führen.