我正在将文件加密应用程序从Windows移植到Mac OSX。它的一个功能是,它允许您在其源应用程序(例如TextEdit)中打开加密文件,进行一些更改,然后重新加密文件。
要在OSX上实现这一点,我想要监视当我要求系统打开我的解密文档时启动的进程的启动/停止,或者监视文件本身是否有任何获取和释放的锁。
有没有办法通过现有的OSX或Unix API以编程方式实现这一目标?我已经尝试过.NET提供的API(FileSystemWatcher,Process)。
答案 0 :(得分:0)
我要做的是在我要求操作系统在默认应用程序中打开我的文件后,从NSNotificationCenter
和NSApplication
收听通知。具体事件是:
NSWorkspace.Notifications.ObserveDidLaunchApplication(EventHandler)
NSWorkspace.Notifications.ObserveDidTerminateApplication(EventHandler)
如果您遇到同样的问题,请see my implementation here。