IDebugComPlusSymbolProvider::UpdateSymbols
Applies to: Visual Studio Visual Studio for Mac
Note
This article applies to Visual Studio 2017. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here
Updates the debug symbols in memory with those from the specified data stream.
Syntax
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.