SymGetSymbolFileW function (dbghelp.h)
Locates a symbol file in the specified symbol path.
Syntax
BOOL IMAGEAPI SymGetSymbolFileW(
[in, optional] HANDLE hProcess,
[in, optional] PCWSTR SymPath,
[in] PCWSTR ImageFile,
[in] DWORD Type,
[out] PWSTR SymbolFile,
[in] size_t cSymbolFile,
[out] PWSTR DbgFile,
[in] size_t cDbgFile
);
Parameters
[in, optional] hProcess
A handle to the process that was originally passed to the SymInitialize function.
If this handle is 0, SymPath cannot be NULL. Use this option to load a symbol file without calling SymInitialize or SymCleanup.
[in, optional] SymPath
The symbol path. If this parameter is NULL or an empty string, the function uses the symbol path set using the SymInitialize or SymSetSearchPath function.
[in] ImageFile
The name of the image file.
[in] Type
The type of symbol file. This parameter can be one of the following values.
Value | Meaning |
---|---|
|
A .exe or .dll file. |
|
A .dbg file. |
|
A .pdb file. |
|
Reserved. |
[out] SymbolFile
A pointer to a null-terminated string that receives the name of the symbol file.
[in] cSymbolFile
The size of the SymbolFile buffer, in characters.
[out] DbgFile
A pointer to a buffer that receives the fully qualified path to the symbol file. This buffer must be at least MAX_PATH characters.
[in] cDbgFile
The size of the DbgFile buffer, in characters.
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
All DbgHelp functions, such as this one, are single threaded. Therefore, calls from more than one thread to this function will likely result in unexpected behavior or memory corruption. To avoid this, you must synchronize all concurrent calls from more than one thread to this function.
To call the Unicode version of this function, define DBGHELP_TRANSLATE_TCHAR.
Note
The dbghelp.h header defines SymGetSymbolFile as an alias that automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that is not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.
Requirements
Requirement | Value |
---|---|
Target Platform | Windows |
Header | dbghelp.h |
Library | Dbghelp.lib |
DLL | Dbghelp.dll |
Redistributable | DbgHelp.dll 6.3 or later |