Tengo una herramienta mixta C#/C++ administrada/no administrada C++ construida con Visual Studio 2010. El código en realidad se extiende a través de un .exe (lo llamaré mybinary.exe) y un .dll (mylib.dll).¿Cómo puedo hacer que Very Sleepy Profiler reconozca nombres de funciones en C++ binary?
Establecí las configuraciones de compilación en el proyecto para el archivo dll y el archivo exe para generar archivos PDB en compilaciones de versiones. Me he asegurado de que los archivos PDB estén ambos en el mismo directorio en el que están el exe y el pdb. Pero todavía no veo los nombres de las funciones cuando depuro este programa; Solo veo direcciones. He aquí un extracto relevante de lo que me pasa en la barra de estado poco en la parte inferior cuando selecciono el programa en la primera pantalla de mucho sueño:
DBGHELP: mybinary.vshost - public symbols
C:\Users\(me)\AppData\Local\sleepy\vshost32-clr2.pdb\(long hex string)\vshost32-clr2.pdb
...
DBGHELP: No debug info for C:\myproj\mylib.dll. Searching for dbg file
DBGHELP: C:\myproj\mylib.dbg - file not found
DBGHELP: C:\myproj\dll\mylib.dbg - path not found
DBGHELP: C:\myproj\symbols\dll\mylib.dbg - path not found
SYMSRV: C:\Users\peastlund\AppData\Local\sleepy\mylib.dbg\4EF1F48B13c000\mylib.dbg not found
DBGHELP: C:\myproj\mylib.dbg - file not found
DBGHELP: C:\myproj\dll\mylib.dbg - path not found
DBGHELP: C:\myproj\symbols\dll\mylib.dbg - path not found
DBGHELP: C:\myproj\mylib.dbg - file not found
DBGHELP: C:\myproj\mylib.dll missing debug info. Searching for pdb anyway
DBGHELP: mylib - public symbols
C:\myproj\mylib.pdb - unmatched
...
DBGHELP: MOD: mybinary.vshost
...
DBGHELP: mybinary - private symbols & lines
C:\myproj\mybinary.pdb
lo que parece que hay un problema a juego mylib.pdb a MYLIB. dll, por alguna razón no estoy claro, pero me daré cuenta de que no obtengo las direcciones adecuadas para las funciones que son de mybinary.exe tampoco. Tengo una computadora nueva con instalaciones recientes, por lo que este no es un problema de "alguna biblioteca está desactualizada".
¡Muy apreciado si alguien puede ayudar con esto!
EDITAR: En realidad, esto no es específico del código optimizado. Otros profilers tuvieron algunos problemas con C++ optimizado, por lo que cambié a Very Sleepy, pero en las pruebas ahora me doy cuenta de que con Very Sleepy no consigo obtener nombres de funciones incluso cuando compilo en modo de depuración.