我正在爲基於文檔的應用程序設計一個適用於Mac的。這個應用程序有它自己的數據模型和方法來編寫和閱讀這種類型的文檔。如果我要開始預定義文檔這個應用程序,我能做到這一點的方式如下:打開命令行並輸入捕獲在MAC上使用基於文檔的應用程序創建新文檔的參數
open -a /Applications/MyApp.app file
如果這僅適用於參數「file
」是一種MyApp的文檔。現在我想用另一種文檔(如文本文件或其他)執行MyApp。例如:
open -a /Applications/MyApp.app text.rtf
的delivered/committed
文本文件應該被讀取並自動插入到從MyApp的一個完整的新文檔。現在我試着在int main(int argc, char *argv[])
裏面找到text.rtf。但我得到以下警告:
The document text.rtf could not be opened. MyApp cannot open files of this type
是否有人有一個想法如何捕捉到的參數,並導入它作爲一個完整的新的基於MyApp的文檔的一部分嗎?我如何將它發送給NSApplication?
會很高興有任何幫助。
是不是一樣 ' - (無效)的applicationDidFinishLaunching:(NSNotification *)aNotification { 的NSArray * argsPath = [[NSProcessInfo processInfo]參數]; NSURL * url = [NSURL fileURLWithPath:[argsPath objectAtIndex:1]]; _argFile = [File initWithURL:url]; }' 使用'NSProcessInfo'我可以對所有參數做一個請求。現在我想在另一個類中使用@property argFile。 – 3ef9g 2014-12-08 16:50:17
是否可以在另一個類中使用來自AppDelegate的屬性? – 3ef9g 2014-12-08 16:59:15
不一樣 - 應用程序在NSApplication的參數中沒有收到目標文件;另外如果應用程序已經啓動,你也不會在那裏獲得參數。對於(2)你必須將屬性值發送到類的另一個實例 - 我不知道你的應用程序設計,以建議代碼將看起來像 – Petesh 2014-12-08 16:59:56