OS X锁屏纯C?

时间:2013-02-28 20:09:59

标签: c macos osx-mountain-lion

我知道这是可能的,因为我有几年前写的二进制文件就是这样做的。不幸的是,我没有保存源代码。

我知道它是用纯C编写的,我打电话给OS X API并且能够锁定屏幕。谷歌搜索“纯C OS X锁定屏幕”和类似的字符串并没有让我感到满意;我在Objective C中看到了如何做到这一点的文档,但这不是我想要的。

任何人都知道我之前是如何完成这项工作的?

2 个答案:

答案 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