0

(내 자신의 질문에 대한 미래/다른 답변).tskill을 사용하여 긴 이름의 프로세스를 죽일 수 있습니까?

필자는 이름으로 (필자의 경우 파스칼 스크립트의 InnoSetup에서) 죽이고 싶은 프로세스가 있습니다. 내 문제는 내 프로세스가 MyVeryLongProcessName.exe이며 Taskkill (tskill)에 대한 액세스 권한이 없다는 것입니다.

이 경우 윈도우 XP (내장)에

, 나는 다음과 같은 결과를 시도 :

c:\> tskill MyVeryLongProcessName 
Could not find process: MyVeryLongProcessName 

하지만이 과정을 개명 (그리고 죽이려고)가 잘 작동하는 경우 :

c:\> tskill MyShortProcess 

내 질문은 /이었다 : 어떻게 tskill을 사용하여 긴 프로세스 이름으로 프로세스를 죽일 수 있습니까?

+0

Inno 5.5에는 Vista + 시스템에서 사용해야하는 재시작 관리자가 내장되어 있습니다. 그러나 OS와 상관없이, 이것이 당신의 과정이라면, 당신은 그것을 외부 적으로 죽이지 말고 우아하게 스스로를 닫으라는 메시지를 보내야합니다. 그리고 만약 당신의 프로세스가 아니라면 아마 그렇게하는 것이 안전하다는 것을 보장 할 수 없기 때문에 아마 그것을 죽이지 않아야합니다. 사용자에게 종료하고 사용자가 수행했는지 확인하도록 요청하십시오. – Miral

답변

2

processname 매개 변수에는 18 자 제한이 있으므로 매우 긴 프로세스에서는 단순히 거부했습니다. tskill 매개 변수

c:\> tskill MyVeryLongProcessN 

/너무 많은 몇 글자와 그냥 오류를 발견하지 프로세스를 반환합니다

MyVeryLongProcessName.exe을 죽일 수있는이 솔루션은 따라서이다.

+0

Windows API, Luke 사용 ;-) – TLama