다른 프로세스가 종료 될 때 프로세스를 종료하려면 어떻게해야합니까?


1

Windows 8.1을 사용하고 있습니다.

상황은 다음과 같습니다. 게임 플레이를 기록하려면 타사 소프트웨어가 필요한 게임을합니다. BAT 파일을 통해 동시에 두 가지를 모두 시작합니다.

@echo off
cd "C:\Riot Games\League of Legends\"
start lol.launcher.exe

cd "C:\Users\Craig\Dropbox\Programs\BaronReplays"
start BaronReplays.exe

exit

이 프로세스 중 하나가 종료되면 다른 프로세스도 함께 종료되도록 설정할 수있는 것이 있습니까?

답변:


2

프로그램 킬러가 필요합니다. 주위에는 여러 가지가 있지만, 우아한 종료 pskill 이 필요하지 않으면 작업을 수행합니다.

가장 간단한 경우 배치 파일을 다음과 같이 변경해야합니다.

@echo off
cd "C:\Users\Craig\Dropbox\Programs\BaronReplays"
start BaronReplays.exe

cd "C:\Riot Games\League of Legends\"
start /wait lol.launcher.exe

pskill BaronReplays.exe

exit

그러면 레코더가 시작되고 게임이 시작되고 게임이 끝나면 레코더가 중지됩니다. 키 명령 start /wait은 시작된 프로그램이 끝날 때까지 배치 파일을 일시 중단합니다.

두 프로그램이 서로를 중지하려면, 당신은 두 개의 배치 파일하는 각 필요 start /wait다음에 하나 개의 프로그램의 pskill다른의를.

다음을 사용하여 다른 파일을 시작할 수 있으므로 배치 파일 중 하나만 시작하면됩니다.

start cmd /c OtherBatch.cmd`

마지막으로보다 정교한 솔루션을 원한다면 NirCmd를 살펴보십시오 . 이 두 유틸리티는 모두 프리웨어입니다.


안녕하세요. 지금까지 도움을 주셔서 감사합니다. 문제는 "lol.launcher.exe"는 실제로는 실행기 일 뿐이며 종료되는 프로세스 (및 "BaronReplays.exe"를 종료하기 위해 트리거하려고 함)를 "LolClient.exe"라고합니다. 그 문제를 해결할 방법이 있습니까?
Craig

NirCmd WaitProcess그냥 할 것입니다. 런처를 시작한 후 클라이언트를 시작한 후 런처가 종료되지 않는 한 클라이언트를 시작할 시간을 제공하려면 런처를 시작한 후 잠자기 상태로 두어야합니다.이 경우 start /wait런처에서 사용할 수 있습니다 .
AFH
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.