我有一個父進程,產生一個子進程。子進程的目標是通過終止父進程來重啓父進程,等待幾秒鐘,然後再次啓動它。我無法檢測父級是否使用管理員權限運行,但子級沒有管理員權限運行。父級擁有一個隱藏窗口,該窗口具有唯一的窗口類,通過該窗口可以找到窗口並將WM_CLOSE發送給它。然而,在某些安裝中,孩子對帶有類標識符的FindWindow()的調用失敗 - 找不到窗口。但是,通過EnumProcesses()枚舉系統中的所有進程,然後打開每個進程,調用GetModuleFileNameEx()成功查找父進程的可執行路徑,該進程是已知的並且是已修復的。但是,在進程句柄上調用TerminateProcess()將返回一個拒絕訪問錯誤(5)。設置SeDebugPrivilege失敗,因爲該子項沒有升級權限。 上述情況僅在少數測試機器上發生,在大多數機器上按預期工作 - 可以找到窗口,並試圖通過TerminateProcess()終止父進程。我的問題是 - 在某些機器上配置的子和父級之間是否存在某種隔離模式,以至於FindWindow()和TerminateProcess()失敗,還是有其他原因?無法找到窗口父進程的窗口,既不終止父母
1
A
回答
1
我認爲這個鏈接可以幫助你很多:) GetParentProcessID
這只是源教你從NTDLL NtQueryInformationProcess存儲功能父ID在PROCESS_BASIC_INFORMATION結構InheritedFromUniqueProcessId
相關問題
- 1. 如何從父母窗口獲取父母窗口的內容窗口的引用,當父母是跨域
- 2. 關閉父母的父窗口
- 3. 窗口父母位置?
- 4. 得到新建窗口的「父」窗口
- 5. Silverlight子窗口父窗口
- 6. 父窗口和子窗口
- 7. Javascript getElementById從父窗口到子窗口
- 8. win32:孩子的父母的孩子找不到子窗口
- 9. 父窗口點擊時,如何在父窗口前面添加父窗口
- 10. 從父窗口和父窗口提交功能給父窗口和iframe
- 11. 如何在父窗口關閉時從子窗口訪問父窗口方法?
- 12. JavaScript的父母和孩子的窗口
- 13. 父窗口內的登錄窗口
- 14. 如何父窗口的子窗口
- 15. Xwindow父窗口中的透明窗口
- 16. 父窗口上方的子窗口wpf
- 17. 從父母的關閉子窗口
- 18. 調用父窗口方法
- 19. 刷新父窗口後無法關閉窗口
- 20. 通行證到父窗口
- 21. 從父窗口關閉子窗口
- 22. 父窗口打開子窗口
- 23. 從父窗口關閉模式窗口
- 24. 關閉子窗口刷新父窗口
- 25. 從子窗口刷新父窗口
- 26. 從子窗口關閉父窗口
- 27. 使用子窗口關閉父窗口。
- 28. WPF設置父窗口(窗口)
- 29. 在父窗口刷新子窗口
- 30. 從彈出窗口激活父窗口
父母是否開始讓孩子作爲另一個用戶來運行? – wallyk
不,作爲同一用戶運行!我通過獲取父進程和子進程的用戶名來驗證這一點,並且它是相同的。然而,域名有可能是不同的或類似的東西? –
失敗(測試)機器有什麼共同之處嗎?它所成功的機器的一般特性與它所發生故障的機器的一般特性是什麼? – wallyk