Objective-C 执行AppleScript脚本

在Objective-C里事实上也能够执行AppleScript

第一种方式是Source 将脚本写到变量字符串里

    NSAppleEventDescriptor *eventDescriptor = nil;
    NSAppleScript *script = nil;
    NSBundle *bunlde = [NSBundle mainBundle];
    NSString *scriptSource = @"tell application \"Finder\"\r"
                            "display dialog \"test\"\r"
                            "end tell";
    if (scriptSource)
    {
        script = [[NSAppleScript alloc] initWithSource:scriptSource];
        if (script)
        {
            eventDescriptor = [script executeAndReturnError:nil];
            if (eventDescriptor)
            {
                NSLog(@"%@", [eventDescriptor stringValue]);
            }
        }
    }

另外一种方式是将File, 将脚本写到文件中

    NSAppleEventDescriptor *eventDescriptor = nil;
    NSAppleScript *script = nil;
    NSBundle *bunlde = [NSBundle mainBundle];
    NSString *scriptPath = @"/Users/exchen/Documents/test.scpt";
    if (scriptPath)
    {
        script = [[NSAppleScript alloc] initWithContentsOfURL:[NSURL fileURLWithPath:scriptPath] error:nil];
        if (script)
        {
            eventDescriptor = [script executeAndReturnError:nil];
            if (eventDescriptor)
            {
                NSLog(@"%@", [eventDescriptor stringValue]);
            }
        }
    }