#import Boolean IsPalmSyncingInstalled(void) { #define kCFMHotSyncLibrariesLocation @"/Library/CFMSupport/HotSync Libraries" #define kMissingSyncFrameworkLocation @"/Library/Frameworks/MissingSync.framework" NSFileManager *manager = [NSFileManager defaultManager]; BOOL isDirectory = NO; // HotSync Libraries or a symbolic link exists, then we know the stuff is installed if ([manager fileExistsAtPath:kCFMHotSyncLibrariesLocation isDirectory:&isDirectory]) { return true; } else if ([manager fileExistsAtPath:[kCFMHotSyncLibrariesLocation stringByAppendingPathExtension:@"cfm"] isDirectory:&isDirectory]) { return true; } else if ([manager fileExistsAtPath:kMissingSyncFrameworkLocation isDirectory:&isDirectory]) { return true; } return false; } int main (int argc, const char * argv[]) { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; printf("has Palm syncing: %d", IsPalmSyncingInstalled()); [pool release]; return 0; }