SymAddSourceStream function (dbghelp.h)

Adds the stream to the specified module for use by the Source Server.


BOOL IMAGEAPI SymAddSourceStream(
  [in]           HANDLE  hProcess,
  [in]           ULONG64 Base,
  [in, optional] PCSTR   StreamFile,
  [in, optional] PBYTE   Buffer,
  [in]           size_t  Size


[in] hProcess

A handle to a process. This handle must have been previously passed to the SymInitialize function.

[in] Base

The base address of the module.

[in, optional] StreamFile

A null-terminated string that contains the absolute or relative path to a file that contains the source indexing stream. Can be NULL if Buffer is not NULL.

[in, optional] Buffer

A buffer that contains the source indexing stream. Can be NULL if StreamFile is not NULL.

[in] Size

Size, in bytes, of the Buffer buffer.

Return value

If the function succeeds, the return value is TRUE.

If the function fails, the return value is FALSE. To retrieve extended error information, call GetLastError.


SymAddSourceStream adds a stream of data formatted for use by the source Server to a designated module. The caller can pass the stream either as a buffer in the Buffer parameter or a file in the StreamFile parameter. If both parameters are filled, then the function uses the Buffer parameter. If both parameters are NULL, then the function returns FALSE and the last-error code is set to ERROR_INVALID_PARAMETER.

It is important to note that SymAddSourceStream does not add the stream to any corresponding PDB in order to persist the data. This function is used by those programmatically implementing their own debuggers in scenarios in which a PDB is not available.


Requirement Value
Target Platform Windows
Header dbghelp.h
Library Dbghelp.lib
DLL Dbghelp.dll
Redistributable DbgHelp.dll 6.8 or later