자식 프로세스를 생성하는 부모 프로세스가 있습니다. 자식 프로세스의 목표는 부모 프로세스를 종료하고 잠시 기다린 다음 다시 시작하여 부모 프로세스를 다시 시작하는 것입니다. 부모가 관리자 권한으로 실행되는지 여부를 감지 할 수있는 방법이 없지만 자식은 관리자 권한없이 실행됩니다. 부모 클래스에는 고유 한 윈도우 클래스가있는 숨겨진 윈도우가 있으며,이를 통해 윈도우를 찾고 WM_CLOSE을 보낼 수 있습니다. 그러나 특정 설치에서는 클래스 식별자가있는 FindWindow()에 대한 자식 호출이 실패하고 창을 찾을 수 없습니다. 그러나 EnumProcesses()를 통해 시스템의 모든 프로세스를 열거하고 각 프로세스를 열면 GetModuleFileNameEx()를 호출하면 부모 프로세스가 성공적으로 알려지고 수정 된 실행 가능 경로로 찾습니다. 그러나 프로세스 핸들에서 TerminateProcess()를 호출하면 액세스 거부 오류 (5)가 반환됩니다. 하위 항목에 에스컬레이션 된 권한이 없으므로 SeDebugPrivilege 설정이 실패합니다. 위의 상황은 대부분의 컴퓨터에서 예상대로 작동하는 일부 테스트 컴퓨터에서만 발생합니다. 창을 찾을 수 있고 TerminateProcess()를 통해 부모를 죽이려고하면 성공합니다. 제 질문은 - FindWindow() 및 TerminateProcess()가 실패하거나 다른 이유가있을 수 있도록 일부 컴퓨터에서 구성된 자식과 부모 사이에 격리 모드가 있습니까?FindWindow 부모 프로세스를 찾을 수 없습니다 '창도 부모를 종료하지 않습니다.
1
A
답변
1
나는이 링크는 당신에게 많은 : 이 GetParentProcessID
이 소스는 단지의 ntdll 방법 NtQueryInformationProcess 상점에서 함수가 같은 부모 ID가 PROCESS_BASIC_INFORMATION 구조를 InheritedFromUniqueProcessId 당신을 가르치고 도움이 될 수 있습니다 생각
관련 문제
- 1. 폼의 부모를 "FindWindow"로 설정하십시오.
- 2. JConsole에서 프로세스를 찾을 수 없습니다.
- 3. Maven2가 상대 경로에서 부모를 찾을 수 없습니다.
- 4. exit() 프로세스를 종료하지 못합니까?
- 5. SQL 2008에서 프로세스를 종료하지 못했습니다.
- 6. DataMapper Redis : 부모로부터 자식을 찾을 수 없습니다. 자식으로부터 만 부모를 찾을 수 없습니다.
- 7. 메이븐 폼은 오류 - 저지를 위해 부모를 찾을 수 없습니다
- 8. FindWindow 실패
- 9. 템플릿 컨트롤의 부모를 찾을 수 없습니다 유형 (!) (wpf)
- 10. Autohotkey로 텍스트를 찾을 수 없습니다.
- 11. Process.Close()가 생성 된 프로세스를 종료하지 않습니다. C#
- 12. C++ 부모를 죽인 후 프로세스를 계속 유지합니다.
- 13. CheckedTreeSelectionDialog가 부모를 선택하지 않습니다.
- 14. C 언어 : 아이들은 부모 프로세스도 종료하거나 종료하지 않으며 죽이지도 않습니다.
- 15. 프로세스를 종료하지 않고 프로세스에 명령을 보내려면 어떻게합니까?
- 16. 프로세스를 시작할 때 지정한 파일을 찾을 수 없습니다.
- 17. 마스터 프로세스를 종료하지 않고 유니콘을 어떻게 다시로드합니까?
- 18. 재생! H2를 올바르게 종료하지 않습니다.
- 19. 파이썬에서 airodump 프로세스를 죽일 수 없습니다
- 20. Process.Start에서 프로세스를 시작할 수 없습니다.
- 21. 스레드가 파이썬을 종료하지 않습니다
- 22. 자식 프로세스가 부모 프로세스 자체를 종료하지 않고 처리합니다.
- 23. SQL을 사용하여 데이터베이스에서 중첩 관계가있는 부모를 어떻게 찾을 수 있습니까?
- 24. 명명 된 수은 분기의 부모를 어떻게 찾을 수 있습니까?
- 25. 후크 FindWindow
- 26. findwindow text
- 27. ParseKit.framework가 작동하지 않습니다. Foundation.h를 찾을 수 없습니다.
- 28. CreateProcess 프로세스를 시작할 수 없습니다.
- 29. 생성자 메서드에서 부모를 참조 할 수 없습니다.
- 30. pygtk : 최상위 위젯에 부모를 설정할 수 없습니다.
부모가 다른 사용자로 실행하도록 자식을 시작합니까? – wallyk
아니요, 같은 사용자로 실행됩니다! 부모와 자식 프로세스의 사용자 이름을 가져 와서이를 확인했으며, 이는 동일합니다. 그러나 도메인이 다른가 능성이 있습니까? –
실패한 (테스트) 머신에는 공통점이 있습니까? 성공한 머신과 실패한 머신의 일반적인 특성은 무엇입니까? – wallyk