I\'ve got a C++ app that I\'m porting from Win32 to OSX. I\'d like to be able to launch arbitrary files as if the user opened them. This is easy on windows using ShellExec
Another suggestion if you're working with cocoa:
[[NSWorkspace sharedWorkspace] openFile:@"pathToFile"];
There are other similar methods in NSWorkspace as well. For example to open an application or a URL:
[[NSWorkspace sharedWorkspace] launchApplication:@"pathToApplication"];
[[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:@"URL"]];
Working through [NSWorkspace sharedWorkspace] can give you a bit more control than the standard C system() call.
Edit: Note that you can use Objective-C++ to mix C++ code with Objective-C code and thereby call cocoa methods.