J'utilise le code suivant dans mon projet Cocoa pour appeler un script que j'ai créé. Le script est dans le même dossier que le projet et apparaît même dans le dossier "Resources" dans XCode. Le chemin correct est trouvé, mais il dit toujours que le chemin n'est pas accessible. Aidez-moi, s'il vous plaît.Chemin de lancement NSTask non accessible
NSBundle *mainBundle=[NSBundle mainBundle];
NSString *path=[mainBundle pathForResource:@"script" ofType:@"sh"];
NSTask *task = [[NSTask alloc] init];
[task setLaunchPath: path];
NSLog (path);
NSPipe *pipe = [NSPipe pipe];
[task setStandardOutput: pipe];
[task setStandardError: pipe];
NSFileHandle *file = [pipe fileHandleForReading];
[task launch];
[task waitUntilExit];
NSData *data = [ddFile readDataToEndOfFile];
NSString *output = [[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding];
NSNumberFormatter *f = [[NSNumberFormatter alloc] init];
[f setNumberStyle:NSNumberFormatterDecimalStyle];
HDSpeed = [f output];
[f release];
[task release];
La sortie que je reçois dans le débogueur est:
2010-07-10 17:53:26.384 tester[5023:a0f] /Users/guest/Library/Developer/Xcode/DerivedData/tester-bhukztmqjwoqrwereagsshvtbfqx/Build/Products/Debug/tester.app/Contents/Resources/script.sh
2010-07-10 17:53:26.386 tester[5023:a0f] launch path not accessible
Merci! Je suis nouveau à OSX, alors pourriez-vous me dire où se trouve l'interprète de bash? – hassaanm
/bin toujours sauf si l'utilisateur a modifié son installation de base, ce qui semble peu probable à cet égard. – jer
Oh merci!/bin/bash semblait fonctionner mais maintenant le programme semble s'arrêter d'avancer après le lancement de la tâche. Une idée à ce sujet? – hassaanm