Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] CMD/BAT+VBS завершение процессов

Ответить
Настройки темы
Любой язык - [решено] CMD/BAT+VBS завершение процессов

Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Изменения
Автор: dinis.grek
Дата: 14-07-2014
Описание: Опечатка
Del

Отправлено: 07:37, 13-07-2014

 

Ветеран


Сообщения: 874
Благодарности: 575

Профиль | Отправить PM | Цитировать


Как вариант:

Код: Выделить весь код
Set fso = CreateObject("Scripting.FileSystemObject")
Set RegFile = fso.CreateTextFile("ProcKiller.bat", true)
RegFile.WriteLine("taskkill /F /IM Дочерний_процесс_2.exe /T")
RegFile.WriteLine("taskkill /F /IM ДОЧЕРНИЙ.EXE /T")
RegFile.WriteLine("taskkill /F /IM дочерний.exe /T")
RegFile.WriteLine("taskkill /F /IM Программа.EXE /T")
RegFile.WriteLine("del " & chr(34) & "%~f0" & chr(34))
RegFile.Close
CreateObject("WScript.Shell").Run "ProcKiller.bat", 0, False
.

Отправлено: 10:36, 13-07-2014 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


dinis.grek, перечислите конкретные имена основного процесса, дочерних процессов, укажите какие процессы порождают дочерние процессы, как хотите завершать — запросом на завершение или принудительно.

Отправлено: 18:08, 13-07-2014 | #3


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Поместите следующий код:
читать дальше »
Код: Выделить весь код
Option Explicit

Dim objSWbemObjectEx
Dim elem

With WScript.CreateObject("WbemScripting.SWbemLocator").ConnectServer(".", "root\cimv2")
	For Each elem In Array("Paint it!.EXE", "PsiService_2.exe", "wisptis.exe")
		For Each objSWbemObjectEx In .ExecQuery("SELECT * FROM Win32_Process WHERE Name = '" & elem & "'")
			WScript.Echo objSWbemObjectEx.Name, vbTab, objSWbemObjectEx.ProcessID, vbTab, objSWbemObjectEx.ParentProcessID
		Next
	Next
End With

WScript.Quit 0

в файл с расширением .vbs. Исполните его двойным щелчком при запущенных вышеуказанных процессах. Когда появится диалоговое окно, наподобие:

— нажмите в нём Ctrl-C, чтобы скопировать его содержимое, наподобие:
читать дальше »
Цитата:
Код: Выделить весь код
---------------------------
Windows Script Host
---------------------------
notepad.exe 	 1616 	 2348
---------------------------
ОК   
---------------------------

Полученное содержимое вставьте сюда, на форум, оформив его тэгом [code].
Это сообщение посчитали полезным следующие участники:

Отправлено: 19:57, 13-07-2014 | #4


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Поместите следующий код:
читать дальше »
Код: Выделить весь код
Option Explicit

Dim strPath2Process
Dim objSWbemObjectEx
Dim lngProcessID


With WScript.CreateObject("WbemScripting.SWbemLocator").ConnectServer(".", "root\cimv2")
	strPath2Process = WScript.CreateObject("WScript.Shell").CurrentDirectory
	
	If .Get("Win32_Process").Create(strPath2Process & "\Paint it!.exe", strPath2Process, Nothing, lngProcessID) = 0 Then
		.ExecNotificationQuery( _
			"SELECT * FROM __InstanceDeletionEvent WITHIN 1 " & _
			"WHERE TargetInstance ISA 'Win32_Process' AND TargetInstance.Handle = '" & CStr(lngProcessID) & "'" _
		).NextEvent
		
		For Each objSWbemObjectEx In .ExecQuery("SELECT * FROM Win32_Process WHERE ParentProcessID = '" & CStr(lngProcessID) & "'")
			If objSWbemObjectEx.Terminate() <> 0 Then
				WScript.Echo "Can't terminate child process [" & objSWbemObjectEx.Name & "]."
			End If
		Next
	Else
		WScript.Echo "Can't execute [" & strPath2Process & "\Paint it!.exe]."
		WScript.Quit 1
	End If
End With

WScript.Quit 0

в файл с расширением .vbs в папку с исполняемым файлом «Paint it!.exe». Запустите его двойным щелчком из Проводника. Данный скрипт должен запустить процесс «Paint it!.exe», отследить его завершение, закрыть все дочерние процессы, порождённые именно этим процессом «Paint it!.exe» и завершить свою работу. Пробуйте.

Отправлено: 21:03, 13-07-2014 | #5


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата dinis.grek:
Не работает так. Так как есть своя специфика, как я упомянул собирается портативная версия. Файл скрипта перед сборкой добавляется в корневой каталог проекта. Перед запуском программы собранной выпадает ошибка выполнения скрипта.
Какая именно ошибка?

Отправлено: 21:44, 13-07-2014 | #6


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


dinis.grek, покажите Ваш «Package.ini».

Цитата dinis.grek:
Все для более точного ответа и проверки решения я смогу отписать завтра. »
Не нужно. Ваш «Paint it!.exe» — «чёртик из табакерки»:
читать дальше »
Цитата:
- Понятно, - сказала Алиса, - а "_хливкие_"?
- "_Хливкие_" - это хлипкие и ловкие. "Хлипкие" значит то же, что и "хилые". Понимаешь, это слово как бумажник. Раскроешь, а там два отделения! Так и тут - это слово раскладывается на два!
- Да, теперь мне ясно, - заметила задумчиво Алиса.

Эта оболочка уже запускает и основной исполняемый файл, и прочие потребные ресурсы. Кстати, у меня запуск «wisptis.exe» не наблюдается. Так что выложенный выше мною код тут никаким боком.

Отправлено: 07:25, 14-07-2014 | #7



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] CMD/BAT+VBS завершение процессов

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
.NET - Завершение не своих процессов на C# ldcount Программирование и базы данных 4 29-07-2013 14:19
CMD/BAT - Завершение нескольких одинаковых процессов Dersy Скриптовые языки администрирования Windows 1 01-06-2012 12:13
VBS/WSH/JS - Завершение процессов кроме, определенных O L E G Скриптовые языки администрирования Windows 49 22-05-2012 03:10
Разное - Завершение нескольких процессов из CMD или программы antikiller_bm Microsoft Windows 2000/XP 3 24-05-2009 23:39
Любой язык - [архив] Нужна помощь в написании BAT | CMD | VBS | WSH файлов 0bject Скриптовые языки администрирования Windows 614 19-01-2009 21:58




 
Переход