Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Отладка драйвера в WinDBG  (Прочитано 14885 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Dmitry_177
Участник

ru
Offline Offline

« : 17-07-2007 11:41 » 

Решил драйвер всеже отлаживать в WinDBG а не в SoftICE.. Подскажите пожалуйста как туда загрузить файлы символов? У меня к примеру в папке C:\drv хранятся файлы кода драйвера, makefile и source. Компилирую драйвер checked версией компилятора. В папке C:\drv создаются две папки(сейчас не помню их названия, т.к. на работе). В одной из них создается sys-файл, т.е. сам драйвер и pdb-файл, как я понимаю это файл символов.. А дальше что-то я не пойму никак.. Как мне в WinDBG запихнуть этот pdb-файл? В "File"->"Symbol File Path" прописал путь к этому файлу, и всеравно, например при разборе crash дампа символы не загружаются...
Записан
Dmitry_177
Участник

ru
Offline Offline

« Ответ #1 : 18-07-2007 05:06 » 

все уже.. разобрался! 18 раз прочитана тема и хоть бы кто-нибудь ответил бы...
Записан
aks68
Модератор

il
Offline Offline
Пол: Мужской

« Ответ #2 : 22-07-2007 22:38 » 

все уже.. разобрался! 18 раз прочитана тема и хоть бы кто-нибудь ответил бы...
Данная тема уже обсуждалась на этом сайте напрямую минимум 2 раза и косвенно раза четыре. Пользуйтесь поиском по сайту. Помимо этого конфигурирование WinDBG-a обсасывается в инете на всех языках. Так что пеняете Вы напрасно.

С уважением,
Акс.
Записан
Clyde
Интересующийся

ee
Offline Offline

« Ответ #3 : 18-03-2012 11:17 » 

Прошу пардона за ап старой темы, но в поиске по форуму подобных тем не найдено. А гугль выдает ссылку вот именно сюда, где решения нету Отлично
Вопрос примерно такой же, как и у ТС, но я собираю VS2010, появляется *pdb. Копирую его в отладочную директорию WinDbg,
ставлю bp на IopCallDriver+0x669 (DriverEntry моего драйвера). Сам драйвер грузится нормально, остановка на DE происходит.
Пытаюсь грузить символы
kd> .reload /f exec.sys
DBGHELP: No debug info for exec.sys.  Searching for dbg file
SYMSRV:  f:\symbols\exec.dbg\4F64C7305000\exec.dbg not found
SYMSRV:  c:\symbols\exec.dbg\4F64C7305000\exec.dbg not found
SYMSRV:  http://msdl.microsoft.com/download/symbols/exec.dbg/4F64C7305000/exec.dbg not found
DBGHELP: .\exec.dbg - file not found
DBGHELP: .\sys\exec.dbg - path not found
DBGHELP: .\symbols\sys\exec.dbg - path not found
DBGHELP: exec.sys missing debug info.  Searching for pdb anyway
DBGHELP: Can't use symbol server for exec.pdb - no header information available
DBGHELP: exec.pdb - file not found
*** ERROR: Module load completed but symbols could not be loaded for exec.sys
DBGHELP: exec - no symbols loaded

Как я понимаю, не находит он отладочные символы(
Выставил .symopt+ 0x40 чтобы грузить пдб, несмотря на дейтстамп, всё равно не грузит
Что делать?
Записан
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #4 : 18-03-2012 21:13 » 

http://windbg.info/doc/1-common-cmds.html#7_symbols
.sympath
.sympath+ C:\MoreSymbols   ->  add symbols from C:\MoreSymbols (folder location)
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
Clyde
Интересующийся

ee
Offline Offline

« Ответ #5 : 19-03-2012 04:51 » 

Я добавил символы, созданные VS, создав папку с соответствующей CRC в символьной директории, все равно пишет что не найдено.
Попробую добавить папку проекта в директории , но кажется что не поможет.

Добавлено через 16 минут и 56 секунд:
Походу я был настолько глуп, что использовал старую версию дрова и новую пдб (или же флаги .symopt работают как-то по-другому), однако загрузилось.
.sympath+ C:\MoreSymbols   не делал (смысл?)
В любом случае, всем спасибо, заработало
PS В первом моем посте вместо IopCallDriver следует читать IopLoadDriver
« Последнее редактирование: 19-03-2012 05:08 от Clyde » Записан
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #6 : 19-03-2012 08:35 » 

бывает)
PS смысл - pdb не копировать, а оставлять там где лежит после компиляции проекта. что помогает избежать вот таких коллизий)
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
resource
Молодой специалист

ru
Offline Offline
Пол: Мужской

« Ответ #7 : 19-03-2012 19:00 » 

Странно всё это. В самом бинаре есть отладочная информация (если её намеренно не вырезали (но кто ж так будет делать, когда отлаживается)), и в том числе путь к символам. Никогда не прописываю путь к своим символам, и WinDbg без проблем их находит.
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines