0
根據this頁面,功能LSOpenApplication
自OS X v10.10
已被棄用。建議的替代方案是使用-[NSWorkSpace launchApplicationAtURL]
代替。不幸的是,我正在用C++編寫一個用戶代理,它必須啓動一個用Cocoa編寫的GUI應用程序。這意味着我無法訪問可可功能(包括上述替代選項)。LSOpenApplication已棄用?
我還可以使用其他什麼函數來幫助我做到這一點,但未標記爲已棄用?
在此先感謝。
我可以使用LSOpenApplication爲流程提供參數嗎? – Alex 2014-12-04 21:20:35
不完全是這樣,但將參數傳遞給應用程序並不常見。首先,「打開」應用程序可能意味着重新打開應用程序。也就是說,如果它已經在運行,它將被激活並將收到'rapp'Apple Event。在這種情況下,它不會收到命令行參數,因爲這些參數只在啓動時有意義。同樣,通常通過Apple Events與GUI應用程序進行通信。因此,例如,如果您使用應用程序打開文檔,則不會將其作爲命令行參數傳遞。相反,它是通過一個'odoc'Apple事件傳遞的。 'LSOpenFromURLSpec()'將爲你的'itemURLs'做到這一點。 – 2014-12-04 21:43:08
謝謝。我會嘗試AppleEvent方法! – Alex 2014-12-04 22:04:31