我是Objective-C的新手,我正在尝试将AppleScript转换为Objective-C。使用AStranslate,我收到错误Untranslated event 'sysoexec'
以下是我要翻译的AppleScript:
do shell script "/System/Library/CoreServices/'Menu Extras'/User.menu/Contents/Resources/CGSession -suspend"
我在Google上搜索过,人们说NSTask
可以用来模拟终端运行命令。我已经尝试了几个小时,但无法弄清楚如何使用NSTask
。有人可以帮我翻译AppleScript吗?
感谢, 我想要的是有一个按钮来运行这个终端命令而不是使用applescript。
我仍然接受目标C的第一次演讲......
我试试这个似乎不起作用
@implementation hopethiswork
- (IBAction)press:(id)sender {
NSTask *a = [[NSTask alloc] init];
[a setLaunchPath:@"/System/Library/CoreServices/'Menu Extras'/User.menu/Contents/Resources/CGSession"];
[a setArguments:[NSArray arrayWithObject:@"-suspend"]];
[a launch];
}
@end
答案 0 :(得分:2)
NSTask *a = [[NSTask alloc] init];
[a setLaunchPath:@"/System/Library/CoreServices/'Menu Extras'/User.menu/Contents/Resources/CGSession"];
[a setArguments:[NSArray arrayWithObject:@"-suspend"]];
[a launch];