Sto cercando di eseguire una copia/incolla per il mio al all'ultima applicazione attiva, qui è il mio codice:Applescript da Mac App dice "fine linea previsto, ma ha trovato 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];
Il problema è che su alcuni computer funziona bene, ma su altri fallisce mio output di errore da errore che viene restituito da 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}";
})
io non riesco a capire che cosa significa o perché succede
Abbiamo provato a copiare il codice generato dallo script Apple nell'editor di Apple Script, e qui funziona perfettamente.
La mia app è in modalità sandbox - ho aggiunto gli identificativi del gruppo per la chiave "com.apple.security.temporary-exception.apple-events" per le app che voglio supportare.
Qualche suggerimento?
\ u201c e \ u201d entrambi rappresentano citazioni (sinistra/destra, rispettivamente). [Digitando le virgolette su una tastiera] (http://en.wikipedia.org/wiki/%22#Typing_quotation_marks_on_a_computer_keyboard) Quindi mi fa credere che non stai sfuggendo alla citazione "correttamente. Gioca con il formato della stringa e i personaggi che ti stanno sfuggendo – erran
Beh, ho tradotto gli unicodes ma non riesco a capire cosa va storto Ho provato a giocare con lo script di apple ma non funziona, la parte strana è che funziona alcuni mac. –
Anche fare dei semplici pennarelli come "attiva questa app" produce lo stesso errore. –