![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Приостановка чужого процесса/нити [D5, D6, Win95/98, WinME]
Asteroid © (2002-10-14 00:25:00)Подскажите, как можно приостановить чужой процесс/нить?
Конкретно: есть прога, поедающая процессор. У меня есть желание время от времени паузить эту прогу. При использовании SuspendThread получалась ошибка. Есть ли какой-нибудь другой способ так сделать?
Asteroid (2002-10-14 22:15:00) [1]В этом вся феня: я нашел все нити процесса через функции TlHelp32, а при вызове SuspendThread возвращалось $FFFFFFFF. Может надо было сделать что-то еще или же под ME это сделать невозможно? Есть ли другие методы/проги?
PsTools под ME не работает :(
Xemax (2002-10-14 20:31:00) [2]Для этого можно использовать SuspendThread/ResumeThread - останавливает/возобновляет работу нити соответственно. Для остановки процесса нужно остановить все его нити. Рабочий пример (без исходников) есть на http://www.sysinternals.com. Качай набор утилит PsTools. В этих утилитах есть утилита PsSuspend, которая позволяеь останавливать процессы.
P.S. Я программирую под 2000/XP там этот способ работает, а под Win95/98, WinME я не знаю работает он или нет? И PsTools тоже расчитаны на NT/2k/XP.
Asteroid (2002-10-14 19:36:00) [3]Есть такой проект - Seti@Home. Сидит в трее и использует всенеактивное время процессора на "поиск внеземных цивилизаций". Хотелось бы сделать свою прогу, тормозящую Seti@Home, чтобы процессор некоторое время мог отдыхать.
Xemax (2002-10-14 14:42:00) [4]смогу помочь лучше (хотя я под Win9x почти не программил) если укажеш что за прога?