내 코코아 응용 프로그램에서 외부 응용 프로그램을 시작하려면 system() 함수를 호출해야합니다. 내가 사용하는 명령은 다음과 같습니다코코아 응용 프로그램에서 시스템() 호출
system("./main &");
내가 엑스 코드에서 응용 프로그램을 실행하면 내가 어디 주요 넣어하는 폴더를 알고 있기 때문에, 그것이 잘 작동합니다.
아카이브를 만들고 내 .app 응용 프로그램을 배포하면 system()에서 "main"을 찾을 수 없습니다. 내가 그것을 어디에 넣어야하는지 ?? 그렇지 않으면 응용 프로그램이없는 폴더에서 "./"을 사용하여 응용 프로그램을 어떻게 실행할 수 있습니까?
EDIT : 어쩌면 NSTask를 사용하여 해결되었지만 백그라운드에서 "메인"을 어떻게 실행할 수 있습니까? 이제 새로운 터미널 창에서 열립니다.
NSTask *task = [[NSTask alloc] init];
[task setLaunchPath:@"/Applications/Multibo/main"];
[task setArguments:[NSArray arrayWithObjects:[NSString stringWithFormat:@"./main &"], nil]];
[task launch];
감사
런타임시 작업 디렉토리에 대한 가정을 할 수 없으므로 전체 경로가 필요합니다. –