ich eine Anwendung, die eine XML-Datei durch diesen Terminal-Befehl importieren:NSTask Starten verursacht Absturz
offen/path/to/main \ app.app --args myXML.xml
Das funktioniert gut, ohne Probleme. Und ich habe Applescript verwendet, um diesen Befehl über Shell zu starten, und es funktioniert genauso gut. Doch wenn versuchen Cocoa NSTask Launcher mit diesem Code:
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];
die Anwendungen starten auf das Einstiegsbild und dann abstürze, wenn entweder die nächste Schaltfläche geklickt wird oder wenn man versucht, das Fenster zu schließen. Ive versuchte NSAppleScript mit dieser Verwendung:
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];
Dies wird das Programm starten und es wird auch zum Absturz bringen und ich bekomme diesen Fehler in meinem Xcode Debug-Fenster:
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.
Also mit Forschung kam ich mit dies:
NSAppleScript *script = [[NSAppleScript alloc] initWithSource:@"do shell script \"arch -i386 osascript /Applications/MainApp/InstallData/App/test.scpt\""];
NSDictionary *errorInfo;
[script executeAndReturnError:&errorInfo];
Aber das verursacht die gleichen Ergebnisse wie der letzte Befehl. Irgendwelche Ideen, was diesen Absturz verursacht?
genug sicher. Adobe spuckte Sachen aus, die steckengeblieben waren. Ich bin kein C-Entwickler, aber das ist, was mir gesagt wurde passiert ist. – tripskeet