Сейчас на форуме: ==DJ==[ZLO], Magister Yoda, Rio (+6 невидимых)

 eXeL@B —› Основной форум —› pdb -> nms, как?
Посл.ответ Сообщение

Ранг: 0.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 29 декабря 2004 02:25 · Поправил: Bel
· Личное сообщение · #1

Народ, подскажите как из файлов .pdb сделать .nms.
Скачал я с мелкософта архив с .pdb. Когда пытаюсь пропустить их через "nmsym.exe <>.pdb" говорит "Error - Unsupported module type", а потом "Translation of <>.pdb successfully completed" и выплевывает .nms файл маленького размера (там нет символьной информации).
А если запустить Symbol Retriever, то он скачивает те же самые файлы (проверено) и выплевывает .nms размером в ~10 раз больше. Сохраняет он .pdb каждый файл в отдельную папку вида "C:\symserver\kernel32.pdb\FB334FB28FA34128BDE9229285BE4C2F2\". Если эти файлы уже находятся в этих папках, то он их просто конвертирует в .nms, не выходя в интернет.
Дык вот, собственно вопрос в следующем:
1) как его научить брать .pdb файл из любого места,
2) если 1 не получится, то как узнать это магическое 33-символьное число, чтобы создать такую структуру папок.
3) чем еще можно из .pdb получить .nms.



Ранг: 0.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 29 декабря 2004 02:52
· Личное сообщение · #2

По идее нужно указывать nmsym.exe не сам .pdb-файл, а ехешник, т.е. nmsym.exe <>.exe, и если .pdb-файл будет лежать в том же каталоге, то он будет использоваться (инфа с какого-то форума).
Проблема в том, что при установке символов от MS все pdbшники рассовываются по нехилому дереву каталогов и вытаскивать их оттуда неохота. С другой стороны, эти pdbшники видны nmsym.exe, т.к. при создании вручную и с помощью retriever'а nms получались одинаковые по размеру (pdb файл я не копировал никуда).
Как автоматизировать процесс для всех файлов - фиг знает. Придется писать что-нибудь ручками, наверное.




Ранг: 536.4 (!), 171thx
Активность: 0.660.13
Статус: Администратор
Создатель CRACKL@B

Создано: 29 декабря 2004 03:26
· Личное сообщение · #3

Bel пишет:
если 1 не получится, то как узнать это магическое 33-символьное число

А я вот подумал... а может это число и не играет роли - поставить там везде одинаковое число да и всё, хотя я не пробовал.

-----
Всем не угодишь




Ранг: 0.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 29 декабря 2004 05:23
· Личное сообщение · #4

Bad_guy пишет:
А я вот подумал... а может это число и не играет роли - поставить там везде одинаковое число да и всё, хотя я не пробовал.

А я пробовал. Как ты уже можешь догадаться, ни фига не получилось.



Ранг: 0.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 29 декабря 2004 05:32
· Личное сообщение · #5

KATEHOK пишет:
нужно указывать nmsym.exe не сам .pdb-файл, а ехешник, т.е. nmsym.exe <>.exe, и если .pdb-файл будет лежать в том же каталоге, то он будет использоваться

УРА! Получилось! Огромное спасибо! Этой заразе действительно надо не .pdb подсовывать, а исходный файл (exe, dll и т.д.)
KATEHOK пишет:
Как автоматизировать процесс для всех файлов - фиг знает.

А для всех и не надо. Обычно надо всего десяток библиотек, а для них и ручками сделать - не велика беда.


 eXeL@B —› Основной форум —› pdb -> nms, как?
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати