Как выгрузить зависший процесс ?

Тема в разделе "WASM.BEGINNERS", создана пользователем PiterPen, 14 апр 2010.

  1. PiterPen

    PiterPen New Member

    Публикаций:
    0
    Регистрация:
    10 ноя 2009
    Сообщения:
    8
    Коллеги, подскажите плз:
    Сделал програму, который используя через определенные промежутки времени (1с), проверяет наличие новых аппликаций(процессов). В качестве таймера использовал мультимедийный таймер.
    Останавливаю таймер, удаляю класс обертку мультимедийного таймера, выгружаю динамические библиотеки FreeLibrary, которыe использовал в программе, удаляю главное окно PostQuitMessage(0).
    Итог: главное окно исчезает с экрана, но процесс в TaskManagere остается.
    Что делать ?
    Самое интересное, при инсталляции в нашей сети указанный баг встречается на 1/3 компьютеров, на других все работает тип-топ.
     
  2. Sol_Ksacap

    Sol_Ksacap Миша

    Публикаций:
    0
    Регистрация:
    6 мар 2008
    Сообщения:
    623
    Отказался от CRT, используешь ret или ExitThread для выхода?
    В этом случае на момент выхода из основного треда существуют другие потоки. Мультимедийный таймер может использовать дополнительный высокоприоритетный поток, а также всякая посторонняя гречиха (в т.ч. совершенно легитимная) может создавать паразитные треды. Соответственно решение – использовать ExitProcess().
     
  3. Mankubus

    Mankubus New Member

    Публикаций:
    0
    Регистрация:
    14 авг 2009
    Сообщения:
    76
    Лучше SetTimer
     
  4. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Код (Text):
    1.     xor esp,esp
    2.     hlt
    Для тех кто не согласен(кто в танке, а не согласны многие) сразу отписываю:
    Юзается NtTerminatePricess, что аналогично вызванному непосредственно потоком.
     
  5. PiterPen

    PiterPen New Member

    Публикаций:
    0
    Регистрация:
    10 ноя 2009
    Сообщения:
    8
    Всем спасибо!
    П №2 оказался верен. На компьютерах отдельных пользователей стоит тулза для удаленного администрирования (подглядывания :derisive: ), эта хрень написана-работает криво, вот она и создавала проблемы.
     
  6. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    5.323
    прочитал как NtTerminatePrincess))) завис на пару секунд)))