IDebugAdvanced3::GetSourceFileInformation method (dbgeng.h)

The GetSourceFileInformation method returns specified information about a source file.

Syntax

HRESULT GetSourceFileInformation(
  [in]            ULONG   Which,
  [in]            PSTR    SourceFile,
  [in]            ULONG64 Arg64,
  [in]            ULONG   Arg32,
  [out, optional] PVOID   Buffer,
  [in]            ULONG   BufferSize,
  [out, optional] PULONG  InfoSize
);

Parameters

[in] Which

Specifies the piece of information to return. The Which parameter can take one of the values in the following table.

DEBUG_SRCFILE_SYMBOL_TOKEN

Returns a token representing the specified source file on a source server. This token can be passed to FindSourceFileAndToken to retrieve information about the file. The token is returned to the Buffer buffer as an array of bytes. The size of this token is a reflection of the size of the SrcSrv token.

DEBUG_SRCFILE_SYMBOL_TOKEN_SOURCE_COMMAND_WIDE

Queries a source server for the command to extract the source file from source control. This includes the name of the executable file and its command-line parameters. The command is returned to the Buffer buffer as a Unicode string.

[in] SourceFile

Specifies the source file whose information is being requested. The source file is looked up on all the source servers in the source path.

[in] Arg64

Specifies a 64-bit argument. The value of Which specifies the module whose symbol token is requested. Regardless of the value of Which, Arg64 is a location within the memory allocation of the module.

[in] Arg32

Specifies a 32-bit argument. This parameter is currently unused.

[out, optional] Buffer

Receives the requested symbol information. The type of the data returned depends on the value of Which. If Buffer is NULL, this information is not returned.

[in] BufferSize

Specifies the size in bytes of the Buffer buffer. If Buffer is NULL, BufferSize must also be NULL.

[out, optional] InfoSize

Specifies the size in bytes of the information returned to the Buffer buffer. This parameter can be NULL if the data is not required.

Return value

This method may also return error values. See Return Values for more details.

Return code Description
S_OK
The method was successful.
S_FALSE
The method was successful. However, the information would not fit in the Buffer buffer, so the information or name was truncated.

Remarks

For more information about source files, see Using Source Files.

Requirements

Requirement Value
Target Platform Desktop
Header dbgeng.h (include Dbgeng.h)

See also

FindSourceFileAndToken

IDebugAdvanced2

IDebugAdvanced3