загружаю модуль ntoskrnl.exe, потом хочу подгрузить символы ntoskrnl.pdb. только в разных версиях windows ntoskrnl.pdb лежат в директориях с разными названиями... d:\websymbols\ 401AD8179\ntoskrnl.pdb 4106003FF97D4BCBA99245BF2172A8C12\ntoskrnl.pdb 8592B6763F34476B9BB560395A383F962\ntoskrnl.pdb 8592B6763F34476B9BB560395A383F962\ntoskrnl.pdb эти названия хранятся в ntoskrnl.exe...... вот вопрос: как из ntoskrnl.exe вытащить эти цифры?
можно как-то программно узнать - там в сигнатуре где-то указаны эти цифры, я только не знаю как ее вытащить оттуда???
sergei132 Сигнатуры в ntoskrnl не хранятся. Они хранятся в отладчике - в твоем случае наверное в Софтайсе или точнее Driver Studio. Сигнатуры ничто иное как хеши ntoskrnl для различных версий ОС и сервиспаков. Единственно, что ты можешь из своего ntoskrnl вытащить - посчитать хеш. Но зачем - Driver Studio и так тебе его покажет
S_T_A_S_ Да, и вправду храняться. Смотрите, секцию CodeView в моем ntoskrnl.exe Windows XP SP2: Код (Text): 5253 4453 76B6 9285 343F 6B47 9BB5 6039 5A38 3F96 0200 0000 6E74 RSDSv...4?kG..`9Z8?.....nt 6F73 6B72 6E6C 2E70 6462 0000 0000 0000 0000 0000 0000 0000 0000 oskrnl.pdb................ Здесь CodeView для PDB7.0. Первым DWORD-ом идет сигнатура фармата CodeView для PDB7.0, потом структура GUID - которая и является 16 байтовой сигнатурой для ntoskrnl.pdb.