天道酬勤,学无止境

distributed-objects

如何在带有目标C的OSX上使用分布式对象?(How Do I Do Distributed Objects on OSX with Objective C?)

问题 截至2016年,与此相关的Apple文档已过时,无法正常工作。 例如,他们提到“保留”,但是在XCode 7.1中,默认值是使用ARC,并且不支持“保留”。 我在网络上尝试了各种示例,但都无济于事。 如何在OSX上编码称为“分布式对象”的IPC机制,在该机制中,客户端应用程序可以在服务器应用程序上调用类方法(例如,特别是在LaunchDaemon中组成的类方法,但不是必需的)? 回答1 这是一个示例代码,助您一臂之力。 server.mm项目最好是将其加载到LaunchDaemon中。 我使用守护程序以root用户身份运行了一些测试,并确定足够以“ mike”身份运行的客户端应用程序以“ root”身份运行守护程序中的代码。 因此,它启用特权提升。 请注意,此IPC不会提供任何协议加密或身份验证方面的挑战-因此,您可以自行添加。 您可能可以摆脱使用AES256 + Base64编码加密的密钥/列表,XML或JSON消息,并且在发送和接收时都使用长而硬的密码。 请记住,使用特权提升,建立一些保护机制非常重要。 首先启动服务器,它将坐在那里,等待连接。 接下来启动客户端,它将建立连接,将数据传递给示例类方法,等待并接收回消息,然后显示并关闭。 服务器还将显示已建立连接以及发送回响应之前在服务器上收到的内容。 请注意,这是一个同步示例,这意味着您调用类方法,并等待响应。

2021-05-09 04:25:31    分类:技术分享    objective-c   macos   cocoa   ipc   distributed-objects

How Do I Do Distributed Objects on OSX with Objective C?

As of 2016, the Apple docs on this are stale and don't work. For instance, they mention "retain", but in XCode 7.1 the default is to use ARC and it doesn't support "retain". I tried various examples on the web and none worked. How do I code the IPC mechanism called Distributed Objects on OSX, where a client application can call class methods on a server application (like one especially composed in a LaunchDaemon, but not required)?

2021-04-07 14:02:47    分类:问答    objective-c   macos   cocoa   ipc   distributed-objects