Как Very Sleepy находит файлы символов?
Кто-нибудь выяснил, как профайл Very Sleepy находит файлы PDB? Кажется, что он не использует переменную _NT_SYMBOL_PATH env. Я добился успеха, поместив PDB в тот же каталог, что и исполняемый файл и библиотеки DLL, но я пытаюсь профилировать программу, которая использует TON библиотек DLL, и она получает действительно больно. Разве нет способа указать на сервер символов?
1 ответ
Решение
Путь к исходному файлу.pdb включается в DLL. Просто не двигай их.
Исходный код Very Sleepy легко доступен. Он использует API DbgHelp, файл исходного кода symbolinfo.cpp. Вызов SymInitialize() позволяет инструменту указать путь поиска для символов, 2-й аргумент. Он проходит NULL, вот где доллар останавливается.