Хелп! Нужно разобрать stack-trace
От: Колян  
Дата: 27.11.02 16:46
Оценка:
Проблема такая. Надо снять stack-trace из другого процесса (exe, собран на VC6).
В текущем процессе stack-trace снимается с пощью StackWalk() на ура.
Но. Если в StackWalk() пихаю хэндл другого процесса, то нифига не работает. Не работает и функция SymGetModuleBase().
Вижу два пути решения.
1. Я что-то делаю не так и надо научиться. Помогите!
2. Надо забить на функции MS и разбирать стек вручную. Все регистры и дамп стека дергать из другого процесса умею, но как по стеку гулять? Киньте ссылочку на доку!
Re: Хелп! Нужно разобрать stack-trace
От: Sergey Россия  
Дата: 28.11.02 09:09
Оценка:
Здравствуйте, Колян, Вы писали:

К>Проблема такая. Надо снять stack-trace из другого процесса (exe, собран на VC6).

К>В текущем процессе stack-trace снимается с пощью StackWalk() на ура.
К>Но. Если в StackWalk() пихаю хэндл другого процесса, то нифига не работает. Не работает и функция SymGetModuleBase().
К>Вижу два пути решения.
К>1. Я что-то делаю не так и надо научиться. Помогите!
К>2. Надо забить на функции MS и разбирать стек вручную. Все регистры и дамп стека дергать из другого процесса умею, но как по стеку гулять? Киньте ссылочку на доку!

Поиск в старой MSDN (январь 2000 года — достаточно старая) по словам SetUnhandledExceptionFilter Pietrek, и будет тебе дока. В MSDN за июль 2002 года этой статьи из Microsoft Systems Developers Magazine (или как он там назывался до переименования в MSDN Magazine)уже нет.
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[2]: Хелп! Нужно разобрать stack-trace
От: Колян  
Дата: 28.11.02 09:30
Оценка:
Здравствуйте, Sergey, Вы писали:

S>Поиск в старой MSDN (январь 2000 года — достаточно старая) по словам SetUnhandledExceptionFilter Pietrek, и будет тебе дока. В MSDN за июль 2002 года этой статьи из Microsoft Systems Developers Magazine (или как он там назывался до переименования в MSDN Magazine)уже нет.


Exception-ов процесс не генерит. Нужно просто время от времени снимать его стек.
Re[3]: Хелп! Нужно разобрать stack-trace
От: Sergey Россия  
Дата: 28.11.02 10:13
Оценка:
Здравствуйте, Колян, Вы писали:

К>Здравствуйте, Sergey, Вы писали:


S>>Поиск в старой MSDN (январь 2000 года — достаточно старая) по словам SetUnhandledExceptionFilter Pietrek, и будет тебе дока. В MSDN за июль 2002 года этой статьи из Microsoft Systems Developers Magazine (или как он там назывался до переименования в MSDN Magazine)уже нет.


К>Exception-ов процесс не генерит. Нужно просто время от времени снимать его стек.


Ты просто поищи Там по исключениям стек вызовов дампится, в самой старой из находимых по этим словам статей это делается "руками", без использования DbgHelp.Dll. Соответственно, процедура легко адаптируется для снятия дампа стека другого процесса.
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[4]: Хелп! Нужно разобрать stack-trace
От: Колян  
Дата: 28.11.02 10:48
Оценка:
Здравствуйте, Sergey, Вы писали:

S>Ты просто поищи Там по исключениям стек вызовов дампится, в самой старой из находимых по этим словам статей это делается "руками", без использования DbgHelp.Dll. Соответственно, процедура легко адаптируется для снятия дампа стека другого процесса.


А... Спасибо!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.