IDebugComPlusSymbolProvider::UpdateSymbols
Updates the debug symbols in memory with those from the specified data stream.
HRESULT UpdateSymbols (
ULONG32 ulAppDomainID,
GUID guidModule,
IStream* pUpdateStream
);
int UpdateSymbols (
uint ulAppDomainID,
Guid guidModule,
IStream pUpdateStream
);
Parameters
ulAppDomainID
[in] Identifier of the application domain.guidModule
[in] Unique identifier of the module.pUpdateStream
[in] Data stream that contains the updated debug symbols.
Example
The following example shows how to implement this method for a CDebugSymbolProvider object that exposes the IDebugComPlusSymbolProvider interface.
HRESULT CDebugSymbolProvider::UpdateSymbols(
ULONG32 ulAppDomainID,
GUID guidModule,
IStream* pUpdateStream
)
{
ASSERT(!"Use UpdateSymbols2 on IDebugENCSymbolProvider2");
return E_NOTIMPL;
}
HRESULT CDebugSymbolProvider::UpdateSymbols2(
ULONG32 ulAppDomainID,
GUID guidModule,
IStream* pUpdateStream,
LINEDELTA* pDeltaLines,
ULONG cDeltaLines
)
{
HRESULT hr = S_OK;
CComPtr<CModule> pModule;
Module_ID idModule(ulAppDomainID, guidModule);
METHOD_ENTRY( CDebugSymbolProvider::UpdateSymbols );
IfFailGo( GetModule( idModule, &pModule ) );
IfFailGo( pModule->UpdateSymbols( pUpdateStream, pDeltaLines, cDeltaLines ) );
Error:
METHOD_EXIT( CDebugSymbolProvider::UpdateSymbols, hr );
return hr;
}
Return Value
If successful, returns S_OK; otherwise, returns an error code.