SymSetHomeDirectory Function

Debug Help Library

SymSetHomeDirectory Function

Sets the home directory used by Dbghelp.

PTCHAR WINAPI SymSetHomeDirectory(
  __in          HANDLE hProcess,
  __in          PCTSTR dir



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


The home directory. This directory must be writable, otherwise the home directory is the common application directory specified with CSIDL_COMMON_APPDATA. If this parameter is NULL, the function uses the default directory.

Return Value

If the function succeeds, the return value is a pointer to the dir parameter.

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


The default home directory is the directory in which Dbghelp.dll resides. Dbghelp uses this directory as a basis for other directories, such as the default downstream store directory (the sym subdirectory of the home directory).

The home directory used for the default symbol store and the source server cache location is stored in the DBGHELP_HOMEDIR environment variable.

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.



Requires DbgHelp.dll 6.1 or later.


Declared in Dbghelp.h.


Use Dbghelp.lib.


Requires Dbghelp.dll.


Implemented as SymSetHomeDirectoryW (Unicode) and SymSetHomeDirectory (ANSI).

See Also

DbgHelp FunctionsSymGetHomeDirectory

Send comments about this topic to Microsoft

Build date: 9/25/2007

© 2007 Microsoft Corporation. All rights reserved.