我知道这是可能的,因为我有几年前写的二进制文件就是这样做的。不幸的是,我没有保存源代码。
我知道它是用纯C编写的,我打电话给OS X API并且能够锁定屏幕。谷歌搜索“纯C OS X锁定屏幕”和类似的字符串并没有让我感到满意;我在Objective C中看到了如何做到这一点的文档,但这不是我想要的。
任何人都知道我之前是如何完成这项工作的?
答案 0 :(得分:3)
执行此操作的一种方法是使用对system()
的调用:
#include <stdlib.h>
int main(void) {
system("/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend");
return 0;
}
答案 1 :(得分:1)
你可能正在考虑CGSCreateLoginSession()
- 这是一个私人功能,Apple没有记录。有关其使用的示例,请参阅this question。