【发布时间】:2014-05-30 21:52:28
【问题描述】:
我在 OSX 上有一个 dylib,我通过 DYLD_INSERT_LIBRARIES 注入它并调用
shm_open("name", O_RDWR);
共享内存是在另一个进程中使用
shm_open("name", O_RDWR|O_CREAT, 0777);
在 /bin/bash 和其他命令行程序中运行时,从注入的 dyld 到外部应用程序的通信是成功的。当从注入的 dylib 调用 shm_open 时,在 Calculator 或 Preview 等 GUI 应用程序中进行测试会产生错误。错误是“不允许操作”。
有人知道这背后的原因吗?
【问题讨论】:
标签: c++ macos user-interface shared-memory dylib