문제

C# 애플리케이션에서 정상적으로 종료하거나 오작동을 시작할 수있는 자식 프로세스를 만들고있는 경우 프로세스를 요청하여 종료합니다. 그러나 프로세스가 종료되었는지 여부를 알고 싶습니다. 일반적으로 종료 프로세스의 오류 코드를 얻을 수 있다는 것을 알고 있지만 일반적인 종료 코드는 무엇이며 프로세스가 죽었다는 것을 의미하는 것은 무엇입니까?

도움이 되었습니까?

해결책

속성 exitcode를 사용할 수 있지만 불행히도 이것은 앱이 구축되는 방식에 따라 다릅니다. 따라서 앱의 소스 코드가 있으면 좋은 출구에 올바르게 반환해야합니다. 이것을 자세히 설명하는 MSDN에 대한이 링크를 참조하십시오.http://msdn.microsoft.com/en-us/library/system.diagnostics.process.exitcode.aspx

다른 팁

Process.kill ()의 소스 코드는 출구 코드를 -1 (2012 년 9 월 기준)으로 설정합니다. Windows 운영 체제는 실제로 종료 코드에 32 비트 부호없는 값을 사용하지만 C#의 서명 된 부호없는 변환이 작동해야한다고 생각합니다 (0 또는 0이 아닌 경우 만 확인하면 중요하지 않습니다. 내 코드).

반면에, 이것은 분명히 문서화되지 않은 동작 (왜?) 마이크로 소프트가 내일 변경하고 출구 코드를 0으로 설정하여 내 코드를 깨뜨릴 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top