Перерисовать трей

Тема в разделе "WASM.WIN32", создана пользователем psu, 9 дек 2006.

  1. psu

    psu New Member

    Публикаций:
    0
    Регистрация:
    12 июл 2006
    Сообщения:
    198
    Задача состоит в удалении иконки процесса, который я убиваю, из трея. Как это сделать?
     
  2. Guest

    Guest Guest

    Публикаций:
    0
    Иконки из трея? или я не так понял?
    P.S. NIM_DELETE, то есть Shell_NotifyIcon(NIM_DELETE, NOTIFYICONDATA)
     
  3. koderr

    koderr New Member

    Публикаций:
    0
    Регистрация:
    29 сен 2006
    Сообщения:
    205
    im1111
    Ага, надо еще как минимум добыть hWnd и hIcon чужого процесса.
     
  4. Guest

    Guest Guest

    Публикаций:
    0
    - Ну HWND найти можно, а hIcon - EnumObjects?
     
  5. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    im1111
    Нельзя - ведь процесс прибит.

    psu
    Поищи по форуму по поводу иконок в трее, я давал ссылку на codeproject, там расписано, как работать с чужими иконками.
     
  6. Guest

    Guest Guest

    Публикаций:
    0
    - можно и до "убийства"
    Codeкproject все же больше подойдет.
     
  7. psu

    psu New Member

    Публикаций:
    0
    Регистрация:
    12 июл 2006
    Сообщения:
    198
    А нельзя ли попроще как-нибудь, без получения дескрипторов и т.д. Вот вручную мышкой двинул на иконку мертвого процесса - она исчезает. Сообщение окну трея послать или что-то типа этого..
     
  8. psu

    psu New Member

    Публикаций:
    0
    Регистрация:
    12 июл 2006
    Сообщения:
    198
    Ну вот. Сам себе подсказал:

    task db "Shell_TrayWnd", 0
    tray db "TrayNotifyWnd", 0
    syspgr db "SysPager", 0
    toolbar db "ToolbarWindow32", 0
    .....

    invoke FindWindowEx, 0, 0, offset task, 0
    invoke FindWindowEx, eax, 0, offset tray, 0
    invoke FindWindowEx, eax, 0, offset syspgr, 0
    invoke FindWindowEx, eax, 0, offset toolbar, 0
    invoke PostMessage, eax, WM_MOUSEMOVE, 0, 0

    Вопрос. А классы окон в других виндах ( тестил под ХР ) так же называются? интересует 2000 и НТ
     
  9. DrSex

    DrSex Юрий

    Публикаций:
    0
    Регистрация:
    1 апр 2005
    Сообщения:
    98
    Адрес:
    Россия
    Маладец ;)

    А посмотреть??
     
  10. psu

    psu New Member

    Публикаций:
    0
    Регистрация:
    12 июл 2006
    Сообщения:
    198
    Ну не поверишь, ну не ту у меня столько ОСей поблизости :)
    так что скорее сдесь ответ спросить
     
  11. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    Так же.