Applescript из Mac App говорит: «Ожидается конец строки, но найдено \U201c\»\U201d».

Я пытаюсь выполнить копирование/вставку для моего последнего активного приложения, вот мой код:

NSString *appleScriptSource = [NSString stringWithFormat:@"\ntell application \"%@\" to activate\ntell application \"System Events\" to tell process \"%@\"\nkeystroke \"v\" using command down\nend tell", [lastApp localizedName], [lastApp localizedName]];

NSDictionary *error;
NSAppleScript *aScript = [[NSAppleScript alloc] initWithSource:appleScriptSource];
NSAppleEventDescriptor *aDescriptor = [aScript executeAndReturnError:&error];

Проблема в том, что на одних компьютерах он работает нормально, а на других не работает. Мой вывод ошибки из ошибки, возвращаемой executeAndReturnError:

2012-06-13 17:43:19.875 Mini Translator[1206:303] (null) (error: {
    NSAppleScriptErrorBriefMessage = "Expected end of line but found \U201c\"\U201d.";
    NSAppleScriptErrorMessage = "Expected end of line but found \U201c\"\U201d.";
    NSAppleScriptErrorNumber = "-2741";
    NSAppleScriptErrorRange = "NSRange: {95, 1}";
})

Кажется, я не могу понять, что это значит и почему это происходит.

Мы попытались скопировать сгенерированный код apple-script в редактор Apple Script, и здесь он работает просто отлично.

Мое приложение изолировано — я добавил идентификаторы пакета для ключа «com.apple.security.temporary-exception.apple-events» для приложений, которые я хочу поддерживать.

Есть предложения?

8
задан Rasmus Styrk 13 June 2012 в 15:51
поделиться