2014-01-25 6 views
4

나는 하루에 누르는 모든 키를 계산하고 금액에 따라 키 유형을 정렬하는 C 프로그램을 만들고 있으므로 가장 자주 누르는 명령을 알 수 있습니다. 그것은 다른 어떤 것보다 더 많은 측면 프로젝트 였지만 내 프로그램이 암호 필드에 대한 입력을 가로 채지 못하는 것 같아서 짜증이났습니다. 나는 이것이 좋은 것이라고 생각하지만, 나는 문서를보고 시간을 보내고 이것을하는 방법을 알아 내려고 노력했다. 나는 어떤 종류의 악성 소프트웨어도 만들려고하지 않고있다. 이 문제를 해결할 방법이 있습니까? 내 프로그램이 루트로 실행 중입니다. ApplicationServices 프레임 워크와 CGEventRefCGEventTapCreate 기능을 사용하고 있습니다. 다른 프레임 워크 또는 구조체를 사용해야합니까? 또한 kCGHIDEventTap, kCGSessionEventTapkCGAnnotatedSessionEventTap 사이에 차이가 있습니까? 나는 그것들 각각을 사용해 보았는데 내 프로그램에 변화를주는 것 같지 않다.OS X 암호 입력에 대한 키보드 이벤트 요격

내가 UPDATE 10.9

OS X에서이 작업을 실행하고 분명히 내가 내 노트북에 대부분의 시간을 보내는 곳이다 어느 터미널로가는 키 입력을 캡처 할 수 없습니다 . 이것은 문제입니다.

+0

'IOKit'을 사용해야 할 수도 있습니다 – jamespick

+2

이 기사를 보셨습니까? http://www.cocoabuilder.com/archive/cocoa/220055-keystroke-logger-for-mac-os.html? – jamespick

+0

@InsertName 여기 키 로거를 실제로 만들려고하지 않고 특정 키를 누를 때마다 변수를 증가시킵니다. 이 기사는 여전히 관련이 있지만 해결책을 제공하지 못하는 것 같습니다. – 735Tesla

답변

2

원하는 것은 상당히 복잡하며 커널 확장이 필요합니다. 프로세스 간 통신도 사소하지 않습니다. logKext, 특히 logKext.cpp를 살펴보십시오. 이 프로젝트는 실제로 키 입력을 암호화 된 파일에 기록합니다. 필요한 모든 것을 가져올 수 있어야합니다.

관련 문제