简单的系统事件的AppleScript不会NSAppleScript

问题描述:

工作,这在苹果的应用程序的脚本正常工作:简单的系统事件的AppleScript不会NSAppleScript

tell application "System Events" to key code 124 using command down 

但在NSAppleScript它的错误“键码。”引号被正确地转义,几种不同的语法都做同样的事情。在应用程序中有前面的东西来激活接收按键的应用程序,但在项目中不需要它,如果它在那里编译,那么NSAppleScript很明显正在拾取字典。我很难过。

我可以运行此代码没有错误。结果和errorDict都记录为空,所以没有问题。你必须有其他问题......这不是苹果的问题。

NSString* cmd = @"tell application \"System Events\" to key code 124 using command down"; 
NSAppleScript* theScript = [[NSAppleScript alloc] initWithSource:cmd]; 
NSDictionary* errorDict = nil; 
NSAppleEventDescriptor* result = [theScript executeAndReturnError:&errorDict]; 
[theScript release]; 
NSLog(@"result: %@", result); 
NSLog(@"error: %@", errorDict); 
+0

代码与你的相同,但对于变量名,我从调试器得到的是: '2012-11-28 11:25:50.325 ********** [10521:303]脚本=使用命令告诉应用程序“System Events”键入代码124使用命令下载 2012-11-28 11:25:50.817 ********** [10521:303] NSAppleScriptErrorBriefMessage =标识符不能跟在此之后属性。 2012-11-28 11:25:50.817 ********** [10521:303] NSAppleScriptErrorNumber = -2740 2012-11-28 11:25:50.818 ********* * [10521:303] NSAppleScriptErrorRange = NSRange:{36,8}' 计数字符,它标记为“键码”作为问题标识符 –

+0

你是对的,它不是苹果。见下文。 –

想通了。应用程序使用跨脚本授权进行沙盒处理,系统事件应用程序没有软件包标识。