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

Показать сообщение отдельно

Ветеран


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

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


Khmel_19, хорошо.

1. Копируете в буфер обмена следующий код:
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

set iCount=%~1
set sProcessName=notepad.exe

if defined iCount (
	for /l %%i in (1, 1, %iCount%) do (
		for /f "usebackq delims=" %%j in (`wmic.exe Process call Create "%sProcessName%" ^| find.exe /i "ProcessId"`) do for /f "tokens=2 delims==; " %%k in ("%%j") do (
			set sProcessID%%i=%%~k
		)
	)
	
	set sProcessID
	pause
	
	set /a iCount -= 1
	
	for /l %%i in (1, 1, !iCount!) do (
		>nul wmic.exe Process where "ProcessID='!sProcessID%%i!'" call Terminate 0
	)
) else (
	echo Usage: %~nx0 ^<Count^>
	exit /b 1
)

endlocal
exit /b 0
2. Открываете Блокнот, вставляете в него из буфера обмена ранее скопированный код, сохраняете в файле с расширением .cmd. Сам этот Блокнот можете даже не закрывать — послужит для иллюстрации.

3. Открываете окно командной строки (Win-R, cmd.exe, Enter).

4. Пишете в нём полный путь к сохранённому пакетному файлу (можно просто перетянуть пакетный файл в окно командной строки из Проводника).

5. Через один пробел параметром пакетного файла указываете будущее количество экземпляров запущенного приложения, то самое Ваше:
Цитата Khmel_19:
На вход пакетному файлу приходит число ( N ) (как параметр пакетного файла). »


В данном примере путь к пакетному файлу — «C:\Мои проекты\0198\0001.cmd», количество экземпляров, указанное первым и единственным параметром пакетного файла — «5».

6. В окне консоли командной строки нажимаете Enter, запуская пакетный файл на исполнение, и видите примерно такую картину:
Скрытый текст

Запущено пять новых экземпляров Блокнота, в окне консоли командной строки перечислены идентификаторы их процессов (у Вас они будут, разумеется, свои). Вы можете посмотреть в Диспетчер задач или Process Explorer и убедиться, что их пять, что перечислены именно их идентификаторы, что шестой процесс Блокнота — это тот незакрытый Блокнот, в котором мы создавали и сохраняли наш пакетный файл (это видно по заголовку окна):



7. В окне консоли командной строки нажимаете для продолжения на любую клавишу и видите примерно такую картину:
Скрытый текст

Первые четыре Блокнота из запущенных пакетным файлом принудительно были закрыты, остался только один последний Блокнот. Тот Блокнот, в котором мы создавали и сохраняли наш пакетный файл, тоже остался открытым, т.е., никак не был затронут работой пакетного файла (как и должно быть по уму).
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:31, 16-09-2018 | #10