Что нового

[Процессы] Как убить процесс через Autoit

BiG_BoY

Новичок
Сообщения
51
Репутация
1
Всем привет.
Как убить процесс(завершить процесс) с помощью Autoit'a?
 
Автор
B

BiG_BoY

Новичок
Сообщения
51
Репутация
1
ProcessClose("LClock.exe")
Вписал вот так, выдало ошибку:Память не может быть read.
Так и должно быть?
 
Автор
B

BiG_BoY

Новичок
Сообщения
51
Репутация
1
Попробовал на другом процессе: всё работает, спасибо.
 

ssvih

Новичок
Сообщения
35
Репутация
1
А как убить процесс и снова проверить его наличие?
Допустим такая ситуация имеется куча окон от браузера Проверяем их WinExists ("[CLASS:IEFrame]", "")
Почему по классу да потому что окно могут иметь разные имена.
Далее проверяем если процесс есть то убиваем его WinClose а вот как это дело запустить повторно на проверку до тех пора пока процессов не останется вовсе?
 

Zaramot

I ♥ AutoIt
Сообщения
1,160
Репутация
660
Попробуй так:
Код:
$PIDs = ProcessList('iexplore.exe') ;Возвращает двумерный массив, содержащий список выполняемых процессов (имя и PID).
For $i = 1 To $PIDs[0][0] ;$PIDs[0][0] - это количество процессов
	If ProcessExists($PIDs[$i][1]) Then ProcessClose($PIDs[$i][1]) ;Если процесс существует, то закрываем его
Next
 

ssvih

Новичок
Сообщения
35
Репутация
1
Да получилось, огромное спасибо!
Я плохо понимаю и разбираюсь в выражениях, если не трудно можете прокомментировать каждое действие их не так много в выражение!
Заранее благодарен!
 

warezoogle3

Новичок
Сообщения
73
Репутация
1
Zaramot,а как сделать тоже самое,если часть процесса при каждом запуске меняется?
Тоесть например MSI****.TMP
Вместо звездочек каждый раз разные символы.
Помогите пожалуйста.
Заранее огромное спасибо! :smile:
 

Zaramot

I ♥ AutoIt
Сообщения
1,160
Репутация
660
Попробуй так:
Код:
$PIDs = ProcessList()
For $i = 1 To $PIDs[0][0]
	$Reg = StringRegExp($PIDs[$i][0], 'MSI.*\.TMP', 3)
	If $Reg <> 1 Then
		if ProcessExists($PIDs[$i][1]) Then ProcessClose($PIDs[$i][1])
	EndIf
Next
 

2easyformy

Новичок
Сообщения
6
Репутация
0
Допустим то же самое, только необходима проверка наличия процессов, самых распространенных видеоплееров.

А соответственно закрытие оных(процессов) допустим раз в 5ть минут(если они открыты)



П.С. задача запретить просмотр видео через плееры, при сохранении кодеков, плееров, и прочей дряни, а также исключение использования Portable плееров. Желательно повесить данное чудо в авто загрузку, к определенным пользователям.

Заранее спасибо.
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
2easyformy [?]
задача запретить просмотр видео через плееры, при сохранении кодеков, плееров, и прочей дряни, а также исключение использования Portable плееров. Желательно повесить данное чудо в авто загрузку, к определенным пользователям.
С такой постановкой вопроса Вам надо в Стол заказов, ИМХО.
 

JOKER-2013

Новичок
Сообщения
4
Репутация
0
Попробуй так:
Код:
$PIDs = ProcessList('iexplore.exe') ;Возвращает двумерный массив, содержащий список выполняемых процессов (имя и PID).
For $i = 1 To $PIDs[0][0] ;$PIDs[0][0] - это количество процессов
    If ProcessExists($PIDs[$i][1]) Then ProcessClose($PIDs[$i][1]) ;Если процесс существует, то закрываем его
Next
Спасибо, мне тоже помогло))
 
Верх