У меня есть приложение, которое может импортировать файл XML с помощью этой команды терминала:NSTask Launch причиной аварии
открытый/путь/к/главная \ app.app --args myXML.xml
Это отлично работает без проблем. И я использовал Applescript для запуска этой команды через оболочку, и она работает так же хорошо. Тем не менее, когда пытаешься использовать какао в NSTask Launcher с помощью этого кода:
NSTask *task = [[NSTask alloc] init];
[task setLaunchPath:@"/usr/bin/open"];
[task setCurrentDirectoryPath:@"/Applications/MainApp/InstallData/App/"];
[task setArguments:[NSArray arrayWithObjects:[(NSURL *)foundApplicationURL path], @"--args", @"ImportP.xml", nil]];
[task launch];
приложение запускается на начальный экран, а затем аварии, когда либо следующая кнопка нажата или при попытке закрыть окно. Ive пытался использовать NSAppleScript с этим:
NSAppleScript *script = [[NSAppleScript alloc] initWithSource:@"tell application \"Terminal\" do script \"open /Applications/MainApp/InstallData/App/Main\\\\ App.app\" end tell"];
NSDictionary *errorInfo;
[script executeAndReturnError:&errorInfo];
Это запустит программу, и она будет врезаться, а также и я получаю эту ошибку в моем Xcode окна отладки:
12011-01-04 17:41:28.296 LaunchAppFile[4453:a0f]
Error loading /Library/ScriptingAdditions/Adobe Unit Types.osax/Contents/MacOS/Adobe Unit Types: dlopen(/Library/ScriptingAdditions/Adobe Unit Types.osax/Contents/MacOS/Adobe Unit Types, 262): no suitable image found.
Did find: /Library/ScriptingAdditions/Adobe Unit Types.osax/Contents/MacOS/Adobe Unit Types: no matching architecture in universal wrapper
LaunchAppFile: OpenScripting.framework - scripting addition "/Library/ScriptingAdditions/Adobe Unit Types.osax" declares no loadable handlers.
Так с исследованием я придумал это:
NSAppleScript *script = [[NSAppleScript alloc] initWithSource:@"do shell script \"arch -i386 osascript /Applications/MainApp/InstallData/App/test.scpt\""];
NSDictionary *errorInfo;
[script executeAndReturnError:&errorInfo];
Но это приводит к тем же результатам, что и последняя команда. Любые идеи о том, что вызывает этот крах?
достаточно точно. Adobe выплевывала материал, который застрял/разбирался. Я не разработчик C, но это то, что мне сказали. – tripskeet