Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Сфера Microsoft » Программное обеспечение Windows » Прочие - SoftIce

Ответить
Настройки темы

Аватара для DillerInc

Обратный инженер


Сообщения: 644
Благодарности: 47

Профиль | Отправить PM | Цитировать


Итак,речь пойдёт о популярном отладчике SoftIce,известном в простонародии также как "сайс".
В общем,вопрос к людям,знакомым с этим "зверем":
установлен SoftIce версии 4.31 из пакета Compuware DriverStudio 3.1,ОС - Win2000 SP4.При работе с отладчиком,а точнее при ковырянии программы,пойманной за хвост с помощью точек останова типа bpx MessageBoxA останавливается системное время,т.е. часы(те,что в трее отображаются)останавливаются.Потом если перезагрузиться,то время встаёт как надо.Следовательно вопрос - это глюк или нормальное явление?Если первое,то как с этим бороться?

-------
То,что неясно,следует выяснить.То,что трудно творить,следует делать с великой настойчивостью. © Конфуций


Отправлено: 01:17, 28-02-2005 | #1


Ветеран


Сообщения: 1404
Благодарности: 135

Профиль | Отправить PM | Цитировать


Это нормальное явление.

SoftIce - это же отладчик нулевого кольца защиты (Ring0) - ядро Windows это тоже Ring0, все драйвера - Ring0, обычная программа - это Ring3 .

Для Windows время замораживается, практически все системные процессы время нахождения в Softice не работают и соответственно не могут отследить изменение времени.
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:09, 02-03-2005 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для DillerInc

Обратный инженер


Сообщения: 644
Благодарности: 47

Профиль | Отправить PM | Цитировать


mrcnn
Цитата:
Это нормальное явление.

SoftIce - это же отладчик нулевого кольца защиты
...я так и думал.Спасибо .

Скоро у меня возможно возникнут новые вопросы по работе этого отладчика,поэтому в случае чего буду сюда писать.

-------
То,что неясно,следует выяснить.То,что трудно творить,следует делать с великой настойчивостью. © Конфуций


Отправлено: 17:18, 03-03-2005 | #3


Аватара для DillerInc

Обратный инженер


Сообщения: 644
Благодарности: 47

Профиль | Отправить PM | Цитировать


А вот и очередной вопрос:
в одной из статей в интернете нашёл следующее...
Цитата:
Вообще-то, для перехвата сообщений существует специальная команда - "BMSG" (Break on MesSaGe), но по малопонятным для меня причинам, в некоторых версиях soft-ice она не работает, выдавая сообщение "Invalid window handle" даже при попытке установить точку останова на заведомо корректный дескриптор окна!
...и в самом деле у меня при попытке реализации этой команды(BMSG)вылезает та же ошибка,сообщающая о неверном дескрипторе(ссылке)окна.Напоминаю,что у меня стоит SoftIce версии 4.31.
Следовательно вопрос: может кто-то имеет опыт/информацию касательно других версий этого отладчика,где подобных глюков нет,или вообще какие-нибудь советы по этому поводу?

-------
То,что неясно,следует выяснить.То,что трудно творить,следует делать с великой настойчивостью. © Конфуций


Отправлено: 21:41, 04-03-2005 | #4


Ветеран


Сообщения: 1404
Благодарности: 135

Профиль | Отправить PM | Цитировать


У меня версия 4.2.6 из релиза Driver Studio 2.6. И операционная система Windows 2000 ( При использовании других осей многие команды могут не работать да и синтаксис команд может отличаться).
Ошибок у меня никаких не возникало и сообщения прекрасно отлавливаются..

1. выясняем handle окна, например, с помощью такой проги как The Customiser от Wanga
2. ставим брейкпоинт, например, таким образом:
bmsg 0x00e6
0x00e6 -это естественно хэндл окна.

Ну, и если интересно, вот синтаксис:
Цитата:
BMSG
Windows 3.1, Windows 9x, Windows NT/2000
Set a breakpoint on one or more Windows messages.

Syntax For Windows 3.1
BMSG window-handle [L] [begin-msg [end-msg]] [c=count]

For Windows 9x and Windows NT/2000
BMSG window-handle [L] [begin-msg [end-msg ]] [IF expression
[DO "command1;command2;..."]]
4
window-handle HWND value returned from CreateWindow or CreateWindowEX.

L Logs messages to the SoftICE Command window.

begin-msg Single Windows message or lower message number in a range of
Windows messages. If you do not specify a range with an end-msg,
only the begin-msg will cause a break.
Note: For both begin-msg and end-msg, the message numbers can be
speci?ed either in hexadecimal or by using the actual ASCII names of
the messages, for example, WM_QUIT.

end-msg Higher message number in a range of Windows messages.

c= Breakpoint trigger count.

IF expression Conditional expression: the expression must evaluate to TRUE (nonzero)
for the breakpoint to trigger.

DO command Breakpoint action: A series of SoftICE commands can execute when
the breakpoint triggers.

Note: You can combine breakpoint count functions (BPCOUNT, BPMISS, BPTOTAL,
BPLOG, and BPINDEX) with conditional expressions to monitor and control
breakpoints based on the number of times a particular breakpoint has or has not
triggered. See Chapter 6, “Using Breakpoints,” in the Using SoftICE manual.

Use
The BMSG command is used to set breakpoints on a window’s message handler that will
trigger when it receives messages that either match a speci?ed message type, or fall within an
indicated range of message types.
• If you do not specify a message range, the breakpoint applies to ALL Windows messages.
• If you specify the L parameter, SoftICE logs the messages into the Command window
instead of popping up when the message occurs.
When SoftICE does pop up on a BMSG breakpoint, the instruction pointer (CS:[E]IP) is set
to the ?rst instruction of the message handling procedure. Each time SoftICE breaks, the
current message displays in the following format:
hWnd=xxxx wParam=xxxx lParam=xxxxxxxx msg=xxxx message-name
Note: These are the parameters that are passed to the message procedure. All numbers are
hexadecimal. The message-name is the Windows de?ned name for the message.
To display valid Windows messages, enter the WMSG command with no parameters. To
obtain valid window handles, use the HWND command.
You can set multiple BMSG breakpoints on one window-handle, but the message ranges for
the breakpoints may not overlap.

Example This command sets a breakpoint on the message handler for the Window that has the handle
9BC. The breakpoint triggers and SoftICE pops up when the message handler receives
messages with a type within the range WM_MOUSEFIRST to WM_MOUSELAST,
inclusive. This range includes all of the Windows mouse messages.
:BMSG 9BC wm_mousefirst wm_mouselast
The next command places a breakpoint on the message handler for the Window with the
handle F4C. The L parameter causes SoftICE to log the breakpoint information to the
SoftICE Command window when the breakpoint is triggered, instead of popping up. The
message range on which the breakpoint triggers includes any message with a type value less
than or equal to WM_CREATE. You can view the output from this breakpoint being
triggered by popping into SoftICE and scrolling through the command buffer.
:BMSG f4c L 0 wm_create

-------
Ehhh.. what's up, doc?..


Отправлено: 09:01, 09-03-2005 | #5


Аватара для DillerInc

Обратный инженер


Сообщения: 644
Благодарности: 47

Профиль | Отправить PM | Цитировать


mrcnn
Благодарю за информацию - будем думать...

P.S. Да,кстати,какой у тебя стоит Service Pack?

-------
То,что неясно,следует выяснить.То,что трудно творить,следует делать с великой настойчивостью. © Конфуций


Отправлено: 09:55, 09-03-2005 | #6


Ветеран


Сообщения: 1404
Благодарности: 135

Профиль | Отправить PM | Цитировать


SP 3

-------
Ehhh.. what's up, doc?..


Отправлено: 11:05, 09-03-2005 | #7

EVILDeath


Сообщения: n/a

Профиль | Цитировать


Я установил SoftICE 4.05 на XP SP1, заменил пару драйверов в sys32\drivers, после этого сервис SoftICE запустился, но когда нажимаю CTRL+D, монитор выключается(переходит в режим пониженного энергопотребления), моник у меня SyncMaster 765mb, если есть разница.

Отправлено: 18:31, 09-06-2005 | #8


Аватара для DillerInc

Обратный инженер


Сообщения: 644
Благодарности: 47

Профиль | Отправить PM | Цитировать


EVILDeath
На вскидку - какой вы установили драйвер в настройках SoftIce "Video" ? Там настоятельно рекомендуется устанавливать т.н. Universal Video Driver.
К тому же зачем устанавливать такую древнюю версию отладчика? Скачайте себе что-нибудь поновее.

-------
То,что неясно,следует выяснить.То,что трудно творить,следует делать с великой настойчивостью. © Конфуций


Отправлено: 21:12, 09-06-2005 | #9

EVILDeath


Сообщения: n/a

Профиль | Цитировать


Проблема в том что у меня мало инету осталось и тот диалап, за то время какое отвел на это дело, нашел кучу сайтов где говорят о SoftICE как о самом крутом дебаггере, но говорят про 4.05 или даже старее, новее нигде найти не могу, может подскажете, где есть новее, или отладчик покруче?

Отправлено: 16:21, 10-06-2005 | #10



Компьютерный форум OSzone.net » Сфера Microsoft » Программное обеспечение Windows » Прочие - SoftIce

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
*SOFT* | Вопрос по WinIce/SoftIce cubase7 Программирование и базы данных 1 09-04-2005 20:01
Help SoftIce - TCP connection Guest Программирование и базы данных 9 24-03-2004 12:23
SoftIce Interceptor Программирование и базы данных 1 04-11-2003 19:46




 
Переход