监控剪贴板活动可可?

时间:2011-05-14 11:04:57

标签: objective-c cocoa

是否可以在可可中“观察”用户剪贴板?

例如,如果我的应用程序是系统托盘样式应用程序,例如Dropbox客户端,我可以订阅用户在另一个应用程序中复制/粘贴时引发的事件吗?

2 个答案:

答案 0 :(得分:1)

您可以随时查看Apple的示例代码ClipboardViewer。它有点类似于你想要做的事情。

答案 1 :(得分:0)

您可以使用File System Api执行此操作。请查看File System Events Programming Guide 你可以通过在根级别创建一个deamon应用程序来做到这一点。创建观察者deamon应用程序的步骤。

1.通过调用FSEventStreamCreate或FSEventStreamCreateRelativeToDevice来创建流。

2.通过调用FSEventStreamScheduleWithRunLoop在运行循环上安排流。

3.然后,您的应用程序应通过调用FSEventStreamStart告诉文件系统事件守护程序开始发送事件。

4.应用程序在到达时提供服务。 API通过调用步骤1中指定的回调函数来发布事件。

5.您可以过滤所需的事件或要观看的文件。