Глобальный перехват API

Тема в разделе "WASM.ASSEMBLER", создана пользователем Freecod, 3 мар 2006.

  1. Freecod

    Freecod New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2006
    Сообщения:
    136
    Перерыл кучу инфы, но всё что я нашёл - это перехват апи в себе и чтото не очень понятное на делфи. Мне нужно выполнять свой код при каждом выходе пользователя и выключении (как понимаю нужно перехватывать ExitWindowEx) и продолжить её выполнение. Сообственно как быть?
     
  2. EvilsInterrupt

    EvilsInterrupt Постигающий азы дзена

    Публикаций:
    0
    Регистрация:
    28 окт 2003
    Сообщения:
    2.428
    Адрес:
    Russia
    Freecod

    есть статьи от _BC_
     
  3. _BC_

    _BC_ БЦ

    Публикаций:
    0
    Регистрация:
    20 янв 2005
    Сообщения:
    759
    EvilsInterrupt



    Какие именно? ;)
     
  4. EvilsInterrupt

    EvilsInterrupt Постигающий азы дзена

    Публикаций:
    0
    Регистрация:
    28 окт 2003
    Сообщения:
    2.428
    Адрес:
    Russia
    Мне помится в одной из твоих статеек было написано, что можно отрубить режим восстановления чего то .... :))))

    думаю "чего то" не надо офишировать, кому нужно додумают, пусть и не сразу1 6)))



    Еще как я понял, можно запросто спалить проц чуваку, почему? пиши мыло скажу свои мысли или ася
     
  5. Oleg_SK

    Oleg_SK Guest

    Публикаций:
    0
    Freecod

    Насколько я помню, перед выполнением указанных действий винда рассылает всем выполняющимся приложениям соответствующие сообщения (Какие именно сейчас не помню. Нужно смотреть.), чтобы приложения подготовились к ним. Учитывая это, IMHO проще всего будет написать приложение, которое, постоянно выполняясь на машине, будет реагировать на данные сообщения нужным вам образом.
     
  6. PE_Kill

    PE_Kill New Member

    Публикаций:
    0
    Регистрация:
    16 янв 2006
    Сообщения:
    107
    Винда посылает эти сообщения только оконным приложениям.
     
  7. mix_mix

    mix_mix Михаил

    Публикаций:
    0
    Регистрация:
    8 окт 2005
    Сообщения:
    277
    Адрес:
    Токио
    Если требуется только получить управление при выключении компа, выхода из сеанса и т.п., то можно, написав dll, загружать её через winlogon.

    Пример:

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify\SensLogn]

    "DLLName"="WlNotify.dll"

    "Logon"="SensLogonEvent"

    "Logoff"="SensLogoffEvent"

    "StartScreenSaver"="SensStartScreenSaverEvent"

    "StopScreenSaver"="SensStopScreenSaverEvent"

    "Startup"="SensStartupEvent"

    "Shutdown"="SensShutdownEvent"

    "StartShell"="SensStartShellEvent"

    Dll - путь к твоей длл

    Logon - имя функции, вызывающийся при входе юзера в систему

    Logoff - при выходе

    и т.д. Все остальное, думаю, понятно. Больший список параметров можешь найти в нете или у себя в реестре :)
     
  8. Oleg_SK

    Oleg_SK Guest

    Публикаций:
    0
    PE_Kill

    Все правильно:) Программа должна создать окно, а потом скрыть его, чтобы не мешалось:) А также, скрыть себя с панели задачь по этой же причине. Но, похоже, mix_mix предлагает решение получше:)
     
  9. Freecod

    Freecod New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2006
    Сообщения:
    136
    mix_mix идея самое то для моей проблемы, и никакого вмешательства в работу системы. Всем спасибо!
     
  10. Freecod

    Freecod New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2006
    Сообщения:
    136
    Да! mix_mix персональное спасибо)