Команды DBH
В командной строке DBH можно использовать различные команды для анализа символов и файлов символов.
В следующей таблице перечислены команды, управляющие параметрами DBH и выполняющие другие основные задачи.
Команда | Действие |
---|---|
подробные [включено|] |
Включает или отключает подробный режим. Без параметра отображает текущий подробный режим. |
симпатия [Путь] |
Задает путь поиска символов. Без параметра отображает текущий путь поиска символов. |
Параметры symopt symopt +Параметры symopt -Options symopt |
Задает параметры символа. + -Значение "Параметры" не заменяет текущие параметры символов. Если + используется или - используется, параметры указывают параметры для добавления или удаления; до или - без пробела после него должно быть + пробел. Без параметра отображаются текущие параметры символов. При запуске DBH значение по умолчанию всех параметров символов 0x10C13. Список доступных параметров см. в разделе "Параметры символов". |
help |
Отображает текст справки для команд DBH. |
покидать |
Завершает работу программы DBH. |
В следующей таблице перечислены команды, которые загружают, выгружают и повторно базирует целевой модуль. Эти команды нельзя использовать, если DBH был запущен, указав идентификатор процесса в командной строке.
Команда | Действие |
---|---|
загрузка файла |
Загружает указанный модуль. Файл должен указать путь, имя файла и расширение имени файла исполняемого файла или файла символов. |
разгружать |
Выгрузит текущий модуль. |
базовый адрес |
Задает базовый адрес по умолчанию для указанного значения. Все адреса символов будут определены относительно этого базового адреса. |
В следующей таблице перечислены команды, которые ищут файлы и отображают сведения о каталоге.
Команда | Действие |
---|---|
Путь к файлу findexe |
Находит указанный исполняемый файл в указанном пути с помощью подпрограммы FindExecutableImage . |
Путь к файлу finddbg |
Находит указанный DBG-файл в указанном пути. Включение расширения DBG является необязательным. |
Dir File Path |
Находит указанный файл в указанном пути или в любом подкаталоге под этим путем с помощью подпрограммы EnumDirTree . |
Файл пути srchtree |
Находит указанный файл в указанном пути или в любом подкаталоге под этим путем с помощью подпрограммы SearchTreeForFile . Эта команда совпадает с dir, за исключением того, что параметры будут отменены. |
Файл ffpath |
Находит указанный файл в текущем пути символа. |
В следующей таблице перечислены команды, которые анализируют список модулей и управляют модулем по умолчанию. Модуль по умолчанию и его базовый адрес отображаются в командной строке DBH.
Команда | Действие |
---|---|
Адрес мода |
Изменяет модуль по умолчанию на модуль с указанным базовым адресом. |
освежать |
Обновляет список модулей. |
omap |
Отображает структуры OMAP модуля. |
epmod PID |
Перечисляет все модули, загруженные для указанного процесса. PiD задает идентификатор процесса требуемого процесса. |
info |
Отображает сведения о загруженной в данный момент модуле. |
obj Mask |
Выводит список всех файлов объектов, связанных с модулем по умолчанию, соответствующим указанному шаблону. Маска может содержать различные подстановочные знаки и описатели; дополнительные сведения см. в разделе "Синтаксис подстановочных знаков строки". |
Маска src |
Выводит список всех исходных файлов, связанных с модулем по умолчанию, соответствующим указанному шаблону. Маска может содержать различные подстановочные знаки и описатели; дополнительные сведения см. в разделе "Синтаксис подстановочных знаков строки". |
перечисление |
Перечисляет все загруженные модули. Всегда существует хотя бы один модуль, если dbH не работает без целевого объекта, в этом случае нет. |
В следующей таблице перечислены команды, которые отображают и ищут символы.
Команда | Действие |
---|---|
Модуль перечисления!Символ |
Перечисляет все символы, соответствующие указанному модулю и символу. Модуль задает модуль для поиска (без расширения имени файла). Символ указывает шаблон, который должен содержать символ. Как модуль, так и символ могут содержать различные подстановочные знаки и описатели; дополнительные сведения см. в разделе "Синтаксис подстановочных знаков строки". |
Адрес enumaddr |
Перечисляет все символы, связанные с указанным адресом. |
Адрес надстройки |
Отображает подробные сведения о символах, связанных с указанным адресом. |
имя [модуль!]Символ |
Отображает подробные сведения о указанном символе. Можно включить необязательный описатель модуля . Подстановочные знаки не следует использовать, так как если несколько символов соответствуют шаблону, имя отображает только первое из них. |
next [Module!]Символ следующий адрес |
Отображает подробные сведения о следующем символе после указанного символа или адреса. Если символ указан по имени, можно включить необязательный описатель модуля , но не следует использовать подстановочные знаки. |
prev [Модуль!]Символ Адрес предварительной версии |
Отображает подробные сведения о первом символе, предшествующем указанному символу или адресу. Если символ указан по имени, можно включить необязательный описатель модуля , но не следует использовать подстановочные знаки. |
Line File#LineNum |
Отображает шестнадцатеричный адрес двоичной инструкции, связанной с указанной исходной строкой, и любые символы, связанные с этой строкой. Также задает текущий номер строки, равный указанному номеру строки. Файл указывает имя исходного файла, а LineNum указывает номер строки в этом файле. Они должны быть разделены знаком числа ( # ). |
srclines File LineNum |
Отображает файлы объектов, связанные с указанной исходной строкой, и шестнадцатеричный адрес двоичной инструкции, связанной с этой строкой. Не изменяет текущий номер строки. Файл указывает имя исходного файла, а LineNum указывает номер строки в этом файле. Они должны быть разделены пробелом. |
адрес laddr |
Отображает исходный файл и номер строки, соответствующие символу, расположенному по указанному адресу. |
linenext |
Увеличивает текущий номер строки и отображает сведения о новом номере строки. |
lineprev |
Уменьшает текущий номер строки и отображает сведения о новом номере строки. |
Функция locals [маска] |
Отображает все локальные переменные, содержащиеся в указанной функции. Если маска включена, отображаются только те локальные жители, которые соответствуют указанному шаблону; дополнительные сведения см. в разделе "Синтаксис подстановочных знаков строки". |
type TypeName |
Отображает подробные сведения о указанном типе данных. TypeName указывает имя типа данных (например, WSTRING). Если имя типа не соответствует этому значению, отобразится любой соответствующий символ. В отличие от большинства параметров команды DBH, TypeName учитывает регистр. |
elines [Source [Obj]] |
Перечисляет все исходные строки, соответствующие указанной маске источника и маске объектов. Источник указывает имя исходного файла, включая абсолютное расширение пути и имени файла. Obj указывает имя файла объекта, включая относительное расширение пути и имени файла. Исходный и obj могут содержать различные подстановочные знаки и описатели; дополнительные сведения см. в разделе "Синтаксис подстановочных знаков строки". Если параметр опущен, это эквивалентно использованию подстановочного знака звездочки (). Если вы не хотите указывать сведения о пути, префиксируйте имя файла с параметром </strong>, чтобы указать путь к подстановочным знакам. |
Значение индекса |
Отображает подробные сведения о символе с указанным значением индекса. |
Адрес области область [модуль!]Символ |
Отображает подробные сведения о родительском элементе указанного символа. Символ может быть указан по адресу или по имени. |
srch [mask=Symbol] [index=Index] [tag=Tag] [addr=Address] [globals] |
Выполняет поиск всех символов, соответствующих указанным маскам. Символ указывает имя символа. Он не должен включать имя модуля, но может содержать подстановочные знаки и описатели; Дополнительные сведения см. в синтаксисе подстановочных знаков строки. Индекс задает шестнадцатеричный адрес символа, который будет использоваться в качестве родительского элемента для поиска. Тег указывает шестнадцатеричное значение типа символа (SymTagXxx), которое должно соответствовать символу. Адрес указывает адрес символа. Если глобальные символы включены, будут отображаться только глобальные символы. |
Адрес uw |
Отображает сведения о очистке функции по указанному адресу. |
dtag |
Отображает все значения классификатора типов символов (SymTagXxx). |
etypes |
Перечисляет все типы данных. |
dump; |
Отображает полный список всех сведений о символах в целевом файле. |
В следующей таблице перечислены команды, связанные с серверами символов и хранилищами символов.
Команда | Действие |
---|---|
home [Path] |
Задает домашний каталог, используемый SymSrv и SrcSrv для нижнего хранилища по умолчанию. Если путь к символам содержит ссылку на сервер символов, использующий нижнее хранилище по умолчанию, то подкаталог домашнего каталога будет использоваться для нижнего хранилища. Без параметра домашняя страница отображает текущий домашний каталог. |
Путь srvpath |
Проверяет, является ли указанный путь путьом к хранилищу символов. |
Srvind File |
Находит индекс сервера символов, соответствующий указанному файлу. Индекс сервера символов — это уникальное значение, основанное на содержимом файла, независимо от того, был ли он добавлен в любое хранилище символов. Файл должен указать имя файла и абсолютный путь к нужному файлу. |
Fii File |
Отображает индексы сервера символов для указанного двоичного файла и связанных с ним файлов. |
Индекс файла getfile |
Отображает файл с указанным индексом имени и сервера символов. Файл указывает имя нужного файла; он не должен включать путь. Индекс указывает индекс сервера символов требуемого файла. DBH использует подпрограмму SymFindFileInPath для поиска дерева по текущему пути символа для файла с таким именем и этим индексом. |
файл sup path1 File2 |
Сохраняет файл в хранилище символов на основе значений параметров. Путь указывает путь к каталогу хранилища символов. File1 и File2 используются для создания разностного значения, которое, в свою очередь, используется для определения хранимого файла. |
storeadd File Store |
Добавляет указанный файл в указанное хранилище символов. Хранилище должно быть корневым путем хранилища символов. |
В следующей таблице перечислены команды DBH, которые применяются к реальным и мнимым символам.
Команда | Действие |
---|---|
undec Name |
Показывает значение украшений, присоединенных к указанному имени символа. Имя может быть любой строкой; она не должна соответствовать загруженному в данный момент символу. Если имя содержит украшения C++, отображается значение этих украшений. |
Добавление размера адреса имени |
Добавляет указанный мнимый символ в список символов, загруженных в DBH. Имя указывает имя добавляемого символа, адрес указывает шестнадцатеричный адрес и размер шестнадцатеричного размера в байтах. Это обрабатывается как любой другой символ в последующих командах DBH, пока сеанс DBH не завершится с выходом или выгрузкой, или до удаления мнимого символа с del. Фактический целевой файл символов не изменяется. |
del Name del Address |
Удаляет ранее добавленный мнимый символ с помощью команды добавления . Символ можно указать по имени или по адресу. Это нельзя использовать для удаления реальных символов. |