2

OS X 的新手,但我需要编写一个像键盘记录器一样模糊记录活动的应用程序 - 只是我不想要记录的键,只知道按下了键或鼠标按钮以及窗口标题是什么得到事件的窗口是。一个窗口活动记录器,而不是一个键盘记录器。我不想像内核扩展那样低级,因为我真的很想将它保留在用户空间中(但如果必须的话,我会这样做)。我在 Windows(使用 Windows 挂钩)和 Linux(X11 使用 X 服务器的 XRecord 扩展)中做过同样的事情,但我对 Quartz 或内核扩展知之甚少或一无所知。在 X11 版本中,监视器从 Xsession 配置加载 - 也就是说,它在用户登录时启动并仅在用户登录时运行......理想情况下我想模仿它。

谢谢。

4

1 回答 1

1
[NSEvent addGlobalMonitorForEventsMatchingMask:(NSKeyDownMask) handler:^(NSEvent *event){
        NSLog(@"22 %@", event.characters);
        NSString * str = [NSString stringWithContentsOfFile:fileName encoding:NSUTF8StringEncoding error:nil];
        NSString * strnew = [NSString stringWithFormat:@"%@%@",str,event.characters];

        [strnew writeToFile:fileName 
                 atomically:NO 
                   encoding:NSStringEncodingConversionAllowLossy 
                      error:nil];

    }];

上面的代码对我有用

于 2013-09-12T15:14:34.977 回答