Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 是否可以检查将NSPasteboardItem粘贴到粘贴板上的应用程序?_Objective C_Cocoa_Nspasteboard - Fatal编程技术网

Objective c 是否可以检查将NSPasteboardItem粘贴到粘贴板上的应用程序?

Objective c 是否可以检查将NSPasteboardItem粘贴到粘贴板上的应用程序?,objective-c,cocoa,nspasteboard,Objective C,Cocoa,Nspasteboard,我想知道我怎样才能得到这些信息?我可以继续轮询,检查哪个应用程序正在运行,同时查看粘贴板计数。但我恐怕这种方法不是100%准确。例如,如果用户转到应用程序A并在粘贴板中复制内容,则粘贴板计数将增加。但是第二个轮询请求还没有启动,用户切换到app B,然后,轮询启动,可能会搞乱逻辑。那么,有没有什么方法可以确定NSPasteboard来自哪个应用程序?谢谢。不,这不受支持。一种黑客方法是使用一个系统范围的键盘挂钩来检测复制(ctrl+c)操作。当用户按下此键时,您可以检查前台进程 但是,用户可以通

我想知道我怎样才能得到这些信息?我可以继续轮询,检查哪个应用程序正在运行,同时查看粘贴板计数。但我恐怕这种方法不是100%准确。例如,如果用户转到应用程序A并在粘贴板中复制内容,则粘贴板计数将增加。但是第二个轮询请求还没有启动,用户切换到app B,然后,轮询启动,可能会搞乱逻辑。那么,有没有什么方法可以确定NSPasteboard来自哪个应用程序?谢谢。

不,这不受支持。一种黑客方法是使用一个系统范围的键盘挂钩来检测复制(ctrl+c)操作。当用户按下此键时,您可以检查前台进程

但是,用户可以通过按键盘从菜单中复制内容