Debugging Tools for Windows |
The GetExtensionFunction and GetExtensionFunctionWide methods return a pointer to an extension function from an extension library.
HRESULT
IDebugControl::GetExtensionFunction(
IN ULONG64 Handle,
IN PCSTR FuncName,
OUT FARPROC * Function
);
HRESULT
IDebugControl4::GetExtensionFunctionWide(
IN ULONG64 Handle,
IN PCWSTR FuncName,
OUT FARPROC * Function
);
#ifdef UNICODE
#define GetExtensionFunctionT GetExtensionFunctionWide
#else
#define GetExtensionFunctionT GetExtensionFunction
#endif
This method can also return error values. See Return Values for more details.
GetExtensionFunction is available in all versions of IDebugControl. GetExtensionFunctionWide is available in IDebugControl4 and later versions.
Extension libraries are loaded into the host engine and extension functions cannot be called remotely. The current client must not be a debugging client, it must belong to the host engine.
The extension function can have any function prototype. In order for any program to call this extension function, the extension function should be cast to the correct prototype.
For more information on using extension functions, see Calling Extensions and Extension Functions.
Headers: Defined in dbgeng.h. Include dbgeng.h.