PRB: DbgHelp.hlp Symbol Handler Functions Cannot Locate Nonpublic Symbols (232305)
The information in this article applies to:
- Microsoft Win32 Application Programming Interface (API), when used with:
- the operating system: Microsoft Windows 95
- the operating system: Microsoft Windows 98
- the operating system: Microsoft Windows Millennium Edition
- the operating system: Microsoft Windows NT 4.0
- the operating system: Microsoft Windows 2000
- the operating system: Microsoft Windows XP
This article was previously published under Q232305 SYMPTOMS
Locating symbolic information in any executable module using SymGetSymFromName() or SymGetSymFromAddr() may not give the desired results for nonpublic symbols. This article explains the limitation of not locating a nonpublic symbol in any executable module by its name or by its corresponding virtual address.
CAUSE
The functionality to locate nonpublic symbols is not implemented in DbgHelp.
MORE INFORMATION
The symbol handler functions of the DbgHelp API can correctly locate only public symbol information in a module.
Once the symbol information of a module has been loaded, the virtual address corresponding to a public function or a variable in that module can be obtained using SymGetSymFromName(). However, the virtual address corresponding to a private function or a variable defined in that module cannot be obtained. If an application specifies a symbolic name that is not public, SymGetSymFromName() fails with an error code of 126 (ERROR_MOD_NOT_FOUND).
If an application knows the virtual address of a public function or a variable defined in a module, SymGetSymFromAddr() can be used to find its corresponding symbol name. If the application specifies a virtual address corresponding to a private function or a variable, SymGetSymFromAddr() locates the nearest public symbol information. Although the SymGetSymFromAddr() API succeeds, the function name returned does not point to the corresponding private function or a variable.
| Modification Type: | Minor | Last Reviewed: | 9/27/2004 |
|---|
| Keywords: | kbAPI kbBug kbDebug kbImgHlp kbKernBase kbprb KB232305 |
|---|
|