如果Cocoa應用程序需要終止另一個進程(它沒有產生),那麼在10.5 OS X上可以使用哪些API來執行此操作?請注意,在Cocoa應用程序中不會知道要終止的進程的進程ID。需要終止的過程也是一個可可過程。如何從Cocoa應用程序中終止進程(不是自己)
0
A
回答
2
使用NSWorkspace或Process Manager查找進程並獲取其PID,然後像平常一樣使用kill
。
2
IIRC,NSWorkspace將只返回由用戶自己擁有的進程,但是,當然有很多不同的方式來照顧這:
+0
http://developer.apple.com/library/mac/#samplecode/MachPortDump/Listings/MachPortDump_c.html – 2011-12-08 05:36:34
0
NSRunningApplication* app = [NSRunningApplication runningApplicationWithProcessIdentifier:pid];
[app terminate]; // ask the target to terminate self
[app forceTerminate]; // the target will not save the data
0
你必須在殺死它之前檢索進程ID。要殺死一個進程,只需發送SIGABT,SIGTERM或SIGKILL信號給它。
相關問題
- 1. 從我的Cocoa代碼中終止一個應用程序
- 2. 如何從AlertDialog終止應用程序?
- 3. 如何正確處理Cocoa應用程序終止?
- 4. 什麼是程序終止其自己的進程(Windows)中的正確方法
- 5. 應用程序不終止
- 6. 從VS10應用程序中查找/終止進程(VC6應用程序)?
- 7. 使用進程時程序不終止
- 8. 從Linux應用程序中終止進程
- 9. 如何區分Cocoa中終止應用程序的不同原因?
- 10. 從終端自動終止java進程
- 11. Android從終端終止應用程序
- 12. 如何在Android應用程序退出後終止進程?
- 13. 父進程在C#中終止時如何終止子進程
- 14. 如何從WiX中終止進程
- 15. 如何檢測進程或應用程序是否正在運行並終止程序如果它不是
- 16. 如何在c#控制檯應用程序中止時終止子進程?
- 17. 從Cocoa應用程序
- 18. 從Cocoa應用程序
- 19. 進程不終止
- 20. 如何在Cocoa中運行另一個應用程序後運行我自己的應用程序?例如,
- 21. 應用程序安裝程序異常進程終止(android)
- 22. 子進程殺死它的父母不會終止自己
- 23. 應用程序進程永不終止每次運行
- 24. Android更改權限不會終止應用程序進程
- 25. 如何從自己的應用程序中確定應用程序版本
- 26. 終端如何控制自己啓動的應用程序
- 27. 進程自動終止
- 28. 如何從python中終止進程和子進程?
- 29. 如何從Cocoa應用程序創建「打印實用程序」?
- 30. 終止應用程序
如果進程ID未知,進程名稱是否已知? – 2011-01-07 06:17:13