|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Июл 3, 2004 19:31:14 Привет всем! Вот возникла у меня необходимость вызвать MessageBeep() из kernel mode, для user mode она есть: eax=1143h (WinXP build 2600) int 2Eh, а для ядра ее вроде как и нету потому, что я че-то не вижу ее в экспорте win32k.sys по смещению 6E901h (как показала NTCALL аси)! Понятно, что хочу вызвать MessageBeep() в контексте user-процесса, но как мне ее зацепить? Помогите, плз! З.Ы. Свой бип писать не хочу, да и в облом! |
|
|
Дата: Июл 4, 2004 03:10:12 · Поправил: Four-F rsrc, смотри какая фигня получится... user32!MessageBeep -> win32k!NtUserCallOneParam -> win32k!xxxMessageBeep -> win32k!PostMessage(,,LOGON_PLAYEVENTSOUND,) win32k постит логону мессагу. Приняв её в winlogon!SASWndProc он вызывает SasPlaySound, которая в свою очередь вызывает PlaySound, а если она обломится, то Beep(440, 125). Что будет дальше мне стало лень смотреть :) , но в случае с Beep, думаю что всё так или иначе сведется к HalMakeBeep. И всё это через ж0*у наискось. А всего-то и надо было прочитать "Драйверы режима ядра. Часть 3: Простейшие драйверы" и написАть примерно такой код: invoke HalMakeBeep, 1193167/440 ; ждем сколько надо, пока пищит invoke HalMakeBeep, 0 Если хочешь поизвращаться, попробуй: invoke NtUserCallOneParam, -1, 36 |
|
|
Дата: Июл 4, 2004 09:37:37 Four-F, скачал все 13 Ваших статей :))) Всё! Теперь я стану умным! :))) У Вас классные статьи, но если их сделать одним .chm к примеру, то было бы вообще ох...но! HalMakeBeep() меня выручила. Thanx!!! Thanx!!! Thanx!!! |
|
|
Дата: Июл 4, 2004 09:46:08 эти статьи и так уже давно есть одним CHM, смотри внимательнее в статьях на wasm.ru |
|
|
Дата: Июл 4, 2004 10:30:39 · Поправил: rsrc CARDINAL, ты имеешь http://wasm.ru/docs/1/wasm-offline-18_01_2004.zip в виду? Так здесь целый сайт! А мне бы токо бы статьи Four-F!!! Если не трудно дай ссылку, плз! |
|
|
Дата: Июл 4, 2004 12:56:46 |
|
|
Дата: Июл 4, 2004 17:33:22 · Поправил: rsrc |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.038 |