IDebugComPlusSymbolProvider::UnloadSymbols
Unloads the debug symbols for the specified module from memory.
HRESULT UnloadSymbols(
ULONG32 ulAppDomainID,
GUID guidModule
);
int UnloadSymbols(
uint ulAppDomainID,
Guid guidModule
);
Parameters
ulAppDomainID
[in] Identifier of the application domain.guidModule
[in] Unique identifier of the module.
Return Value
If successful, returns S_OK; otherwise, returns an error code.
Example
The following example shows how to implement this method for a CDebugSymbolProvider object that exposes the IDebugComPlusSymbolProvider interface.
HRESULT CDebugSymbolProvider::UnloadSymbols(
ULONG32 ulAppDomainID,
GUID guidModule
)
{
HRESULT hr = S_OK;
CComPtr<CModule> pmodule;
Module_ID idModule(ulAppDomainID, guidModule);
METHOD_ENTRY( CDebugSymbolProvider::UnloadSymbols );
#if DEBUG
DebugVerifyModules();
#endif
IfFailGo( GetModule( idModule, &pmodule ) );
#if DEBUG
DebugVerifyModules();
#endif
RemoveModule( pmodule );
pmodule->Cleanup();
Error:
#if DEBUG
DebugVerifyModules();
#endif
METHOD_EXIT( CDebugSymbolProvider::UnloadSymbols, hr );
return hr;
}