2011-08-15 6 views
2

에서 웨이크에 암호 요청을 다시로드 loginwindow, 환경 설정 영역에서 암호 요청com.apple.screensaver을 저장 수면 또는 화면 보호기에서 절전 모드 종료시 암호 요구에 대한 선호,있다. 루트로서 실행중인 데몬으로부터 그 환경 설정을 변경하고 싶습니다.하지만 그럴 수있는 올바른 방법은 무엇인지 모르겠습니다.트리거 OS X에서 잠

하나의 옵션은 [NSUserDefaults persistentDomainForName :]을 (를) 통해 읽기, 업데이트 및 동기화하는 것입니다. 로그인 환경 설정이 성공적으로 업데이트되지만 loginwindow는 해당 환경 설정을 즉시 다시로드하지 않습니다.

CFMessagePortRef port = CFMessagePortCreateRemote(kCFAllocatorDefault, CFSTR("com.apple.loginwindow.notify")); 
CFMessagePortSendRequest(port, 500, NULL, 0, 0, NULL, NULL); 
CFRelease(port); 

하지만 loginwindow 포트는 데몬의 부트 스트랩 네임 스페이스에서 사용할 수 없습니다 : 그것은이 코드를 통해 사용자의 부트 스트랩 네임 스페이스에서 실행되는 응용 프로그램에서 기본 설정을 다시로드 loginwindow 신호 가능합니다.

환경 설정을 업데이트하는 더 좋은 방법이 있습니까? 아니면 데몬으로부터 어떤 loginwindow를 알려주는 간단한 방법일까요?

+0

또한 이에 대한 답변을 찾고 있습니다. 누구든지 도움을받을 수있는 곳을 찾는 데 도움이 될 것입니다. – Dustin

답변

0

나는 이것에 대한 답변을 찾고 있는데 짧게 생각했습니다. 그러나 Apple Script를 사용하면 값이 업데이트됨을 발견했습니다.

osascript -e 'tell application "System Events" to set require password to wake of security preferences to false'