我正在開發OS X桌面應用程序。我想用它捆綁一個輔助工具。我正在考慮使用SMJobSubmit
以提升的權限啓動助手程序。 (該工具基本上會撥打sudo
。)應用程序,幫助程序工具通信
如何將控制檯輸出從工具發送回我的主應用程序?
我知道NSTask
我可以用NSPipe
重定向控制檯輸出。但是,因爲我不認爲我可以使用NSTask
提升特權,所以我使用的是SMJobSubmit
。
(是的,我照顧的授權部分。)
我正在開發OS X桌面應用程序。我想用它捆綁一個輔助工具。我正在考慮使用SMJobSubmit
以提升的權限啓動助手程序。 (該工具基本上會撥打sudo
。)應用程序,幫助程序工具通信
如何將控制檯輸出從工具發送回我的主應用程序?
我知道NSTask
我可以用NSPipe
重定向控制檯輸出。但是,因爲我不認爲我可以使用NSTask
提升特權,所以我使用的是SMJobSubmit
。
(是的,我照顧的授權部分。)
我想,據我所知,你應該使用XPC連接你的助手程序進行通信。而不是使用SMJobSubmit(因爲它已被棄用),請使用SMJobBless將助手工具安裝爲以提升特權運行的LaunchD作業。使用Mac OS X應用程序中的XPC連接與其進行通信,以調用執行邏輯的函數調用,捕獲輸出並回復主應用程序。如果你願意繼續這個想法,下面的蘋果示例代碼將指導你完成。
這個問題已接近3歲。所以OP不太可能嘗試你的建議。即便如此,回答這個問題的正確方法是在這裏顯示代碼和解釋。如果該鏈接死亡,那麼未來的SO用戶將毫無用處。請參閱[如何回答頁面](http://stackoverflow.com/help/how-to-answer),以獲取有關改進您未來答案的幫助。 – Madness
這是用於MacOS的,對嗎? –
是的。我應該指出,我的不好。 – 425nesp