![]() |
eXeL@B —› Вопросы новичков —› Как сохранить содержимое буфера SoftIce на диск? |
Посл.ответ | Сообщение |
|
Создано: 29 ноября 2006 00:39 · Личное сообщение · #1 |
|
Создано: 29 ноября 2006 09:50 · Личное сообщение · #2 |
|
Создано: 29 ноября 2006 12:22 · Личное сообщение · #3 DillerInc 1. Запустить утилиту Symbol Loader.
не могу запустить, т.к. в этот момент моя прога подвешивает всю систему. Вот и хочу с помощью сайса разобраться по какой причине, а для этого надо проанализировать лог. Из si можно распечатать лог на принтер командой prn, на диск поидее тоже можно как-то сохранить. ![]() |
|
Создано: 30 ноября 2006 03:42 · Личное сообщение · #4 |
|
Создано: 30 ноября 2006 05:47 · Личное сообщение · #5 DillerInc Программа стартует из Winlogon и инжектится во все процессы. Я пишу подробную отладку в mylog.txt, особенно подробно критические места, все процедуры защищены seh, в случае исключения отражаю это в логе. И иногда при старте Windows останавливает свою работу. Смотрю в свой лог - обрывается на треде, который устанавливает перехват на очередные ф-ии. при этом не возникает ни каких исключений, процесс не завершается. И я не пойму почему это происходит, может кто-то завершает этот тред принудительно или суспендит его. Вот я и хочу посмотреть в каком состоянии находятся нужные мне потоки. Если ввести команду thread –x – то это порядка 200кб и к тому же в этот момент я не знаю какой tid у нужных мне потоков – вся инфа в mylog.txt. Поэтому я хочу сбросить на диск результат thread –x и открыть mylog.txt и проанализировать ситуацию. Проблема еще в том, что эта ошибка возникает после 20-30 перезагрузки – приходится долго ждать. ![]() |
|
Создано: 30 ноября 2006 05:57 · Личное сообщение · #6 |
|
Создано: 04 декабря 2006 11:42 · Личное сообщение · #7 |
|
Создано: 05 декабря 2006 01:14 · Поправил: tundra37 · Личное сообщение · #8 Andreo пишет: Программа стартует из Winlogon и инжектится во все процессы. Такие вещи надо делать, либо на виртуальной машине, либо задействовать два компа и использовать remote debug. Тогда вся инфа у тебя будет на "независшей" Винде. Andreo пишет: И иногда при старте Windows останавливает свою работу. Т.е. висит wellcome и все?! В винде есть какой-то контроль - у меня такое было после смены буквы системного диска. Скорее всего ты просто не успеваешь инжект завершить. А вообще на такие вопросы тебе вряд ли кто ответит, если только MsRem. ![]() |
|
Создано: 05 декабря 2006 12:05 · Поправил: Andreo · Личное сообщение · #9 на удаленной машине попробую. Проблема частично прояснилась: зависание произошло немного позже обычного, к этому времени уже запустился DebugView(я его ставлю в автозагрузку) и в нем я смог посмотреть ID треда из за которого происходит зависание. Посмотрел стек - выяснилось, что тред не возвращается из OutputDebugStringA, которую я активно использую для отладки. Функция находится в точке OutputDebugStringA->WaitForSingleObject->....->KiUnexpectedInterupt. почему это может происходить? ![]() |
|
Создано: 05 декабря 2006 12:09 · Личное сообщение · #10 |
|
Создано: 05 декабря 2006 22:35 · Личное сообщение · #11 Andreo пишет: что ты имеешь в виду Это было только предположение. Andreo пишет: выяснилось, что тред не возвращается из OutputDebugStringA, Вот здесь и рой. Скорее всего система не успевает эти запросы разгребать. Но это только предположение. Я думаю тут тебе никто из гуру не ответит, т.к. никто не хочет такого "зверя" в будущем поиметь к себе на машину ![]() ![]() |
![]() |
eXeL@B —› Вопросы новичков —› Как сохранить содержимое буфера SoftIce на диск? |