Syser скачал позавчера, поэтому возникла проблема, как отлаживать драйвер не по ассемблерному листингу а по исходным кодам. Загружаю драйвер с помощью syser захожу в source view, но там ничего нет. Пытался сделать sds файл, он создается, загружается, но опять в source view опять ничего нет. Как надо подключать исходный код или он должен лежать в определённой папке?
Да и ещё, я делал вроде всё так, как это описанно на офф. сайте syser. Может он не понимает формат pdb. Я пробовал сборки от mvs2008 и по-старинке wdk 7600.
Вот инструкция с оффициального сайта: Q : How to trace windows driver with source code ? A : If your driver's source code are on the same PC. Syser will convert it's PDB symbols to SDS (Syser Debug Symbol)files and load it automatic. Don't change the source code directory,syser will find them through your module, if your driver's source code aren't on the same PC. Please click menu item< Translate Debug Data to SDS> convert sys to SDS. Before loading your module ,Please load module's SDS first. then you can see syser break on the source code line. Q : What's the SDS file ? A : "Syser Debug Symbol" files contain symbols,source code,line number and other debug information about executable module. Самое странное в том, что при загрузке и при преобразовании указывается путь не до pdb файлов, а до *.sys. И становиться непонятно как это вообще работает. Может файлы pdb и исходники должны где-то лежать? И вообще существуют ли где-нибудь манулы по этому отладчику?
То есть если я перенес всю папку целиком на виртуальную машину ничего работать не будет? Они там что не относительные?
Проблема была решена. Оказывается в pdb записываются абсалютные, а не относительные пути. Поэтому для отладки на виртуальной машине 1)нужно отлаживать с sds собранным на машине, где собирался драйвер 2)отлаживать на основной машине, я не рискнул(syser сыроват и часто бсодит) 3)копирнуть папку проекта так, чтобы полные пути на виртуальной машине и на целевой совпадали. Т.к. я не нашел решение проблемы в интернете может этот топик будет кому-нибудь полезен.