假設您要使用功能或與其他第三方應用程序進行交互。 是否有可能在一個Objective-C項目中與可執行文件鏈接? 二進制文件是否可以封裝在框架中?針對Objective-C項目中的可執行文件的鏈接
3
A
回答
1
您可以使用Xcode的文件複製階段把額外的可執行文件與您的主要原因之一,在Your.app/Contents/MacOS,然後(讓我們說你複製grep
)來找到它使用[[NSBundle mainBundle] pathForAuxiliaryExecutable:@"grep"]
。
我這樣做有點不同,例如我有一個Python程序調用我的一個應用程序(獲得plist格式的響應很好),我只是將它複製到My.app/Contents/Resources目錄中並使用[[NSBundle mainBundle] pathForResource:@「myScript」ofType:@「py」]來找到它。
你做這件事的方式是,我懷疑,味道的問題。我認爲把編譯好的可執行文件放在主要的可執行文件中是合理的,Python/Perl /不管在Resources中如何。從這裏開始,只需要設置一個NSTask
來啓動並將aux程序的輸出傳回您的主要可執行文件。更多關於那here的信息。
相關問題
- 1. 針對C++可執行文件的VS2010中的.Net 3.5目標文件
- 2. 靜態鏈接的可執行文件比動態鏈接的可執行文件更快嗎?
- 3. C++可執行文件鏈接問題
- 4. 鏈接一個可執行文件
- 5. 正確運行unity項目中的可執行文件
- 6. g ++無法將.o文件鏈接到可執行文件中
- 7. 絕對鏈接到PDF - 可執行文件?
- 8. 如何將庫鏈接到cmake中的可執行文件?
- 9. 從可執行文件中提取靜態鏈接的庫
- 10. 可疑的靜態鏈接可執行文件大小
- 11. 如何在我的項目中嵌入可執行文件
- 12. 從我的項目在eclipse中創建可執行文件
- 13. 如何對文件夾中的每個項目執行功能?
- 14. 如何鏈接頂針中的文件?
- 15. 阻止Eclipse針對/鏈接來自Maven目標文件夾的文件
- 16. 在cmake/Visual Studio項目中調試/運行可執行文件
- 17. 編譯「壓力ng」包的靜態鏈接可執行文件
- 18. Drupal:主鏈接項目到服務器上的相對文件
- 19. 將對象文件鏈接到我的項目Eclipse CDR
- 20. CMake:將子目錄中的靜態庫鏈接到另一個子目錄中的可執行文件
- 21. 在可執行文件中找不到C++動態鏈接庫
- 22. Apache的鏈接目錄用PHP執行
- 23. Linux中可執行文件中的目標文件
- 24. 如何使用鏈接器將目標文件轉換爲可執行文件(C目標文件)
- 25. 運行時鏈接程序忽略solaris上可執行文件中的RPATH
- 26. 複製XCode項目,但在iPhone上執行相同的可執行文件
- 27. 卡巴斯基刪除我的項目可執行文件
- 28. 把我的java項目變成可執行文件
- 29. 如何設置項目的可執行文件名?
- 30. 獲取wpf c#的可執行文件項目
如果這就是你想要的,你可以輕鬆地從應用程序中運行命令行工具?該工具可以在任何地方,例如在您的軟件包或用戶'PATH'中的任何位置。 – 2012-07-30 08:32:20
如果第三方應用程序沒有編寫外部腳本或操作程序,那麼這個任務可能不是很容易。如果第三方應用程序只是一個命令行工具,那麼您可以將該工具作爲資源包含在您的應用程序包中,並使用'NSTask'啓動它。 – dreamlax 2012-07-30 09:20:31