SymbolServer function
An entry point to the symbol server DLL. It is used to locate a symbol file. This function should not be called directly.
The PSYMBOLSERVERPROC, PSYMBOLSERVERPROCA, and PSYMBOLSERVERPROCW types define a pointer to this callback function. SymbolServer is a placeholder for the library-defined function name.
Syntax
BOOL CALLBACK SymbolServer(
_In_ PCTSTR params,
_In_ PCTSTR filename,
_In_ PVOID id,
_In_ DWORD two,
_In_ DWORD three,
_Out_ PTSTR path
);
Parameters
params [in]
The server-specific information. This information is used to identify which store to use for locating symbols. For more information, see Symbol Servers and Symbol Stores.filename [in]
The name of the symbol file to be returned. For the default symbol server, this name cannot include path information.id [in]
The first of three identifying parameters (see Remarks).two [in]
The second of three identifying parameters (see Remarks).three [in]
The third of three identifying parameters (see Remarks).path [out]
A pointer to a buffer that receives the fully qualified path to the symbol file. This buffer should be at least MAX_PATH bytes.
Return value
If the server locates a valid symbol file, it returns TRUE; otherwise, it returns FALSE and GetLastError returns a value that indicates why the symbol file was not returned.
Remarks
The identifying parameters are to be filled in as follows:
- If DbgHelp is looking for a .dbg file, the id parameter contains the TimeDateStamp of the original image as found in its PE header. Parameter two contains the SizeOfImage field, also extracted from the PE header. Parameter three is unused and set to zero.
- If DbgHelp is looking for a .pdb file, the id parameter contains a pointer to the PDB GUID. Parameter two contains the PDB age. Parameter three is unused and set to zero.
- If DbgHelp is looking for any other type of image, such as an executable file, it is probably being called through the SymFindFileInPath function. In this case, the parameters are opaque to DbgHelp. However, if this function is being used to retrieve an executable file, it is expected that the parameters will be filled in as for a .dbg file, using TimeDateStamp and the image size as parameters.
Requirements
Redistributable |
DbgHelp.dll 5.1 or later |
Header |
DbgHelp.h |
DLL |
SymSrv.dll |
Unicode and ANSI names |
SymbolServerW (Unicode) and SymbolServer (ANSI) |