> On 11 Aug 2014, at 6:07 pm, Gerriet M. Denkmann <[email protected]> wrote:
> 
> I have a Xpc Helper, which is local to my App (that is only my App can talk 
> to it) which works fine.
> 
> Now I want to convert this Xpc Helper into a LaunchAgent.
> 
> I guess I have to start it via SMJobSubmit().
> But when I do this with the existing Helper, it crashes, gets restarted, 
> crashes again, etc. ad infinitum.
> 
> So the Helper must be modified as well. But how?
> 
> And is this the right way to start it?
> 
> let mach = [ "de.mdenkmann.Xpc-Exchange" : true ]
> let args = [ "/private/tmp/Xpc Exchange.xpc/Contents/MacOS/Xpc Exchange" ]
> let job =     [       "Label"                                 : 
> "de.mdenkmann.Xpc-Exchange",
>                       "LimitLoadToSessionType"        : "Background",         
>                       "MachServices"                  : mach,
>                       "StandardErrorPath"             : "/tmp/Xpc 
> Exchange.log",
>                       "ProgramArguments"              : args
>               ]
> var outError : Unmanaged<CFError>?
> var auth : Authorization?             
> let ok  = SMJobSubmit( kSMDomainUserLaunchd, job, auth, &outError ) 
> ok = true, but then: crash with: "xpc_main() was probably called from a 
> process that is not an XPC service bundle."
> 
> Gerriet.
> 
> 
> P.S. 
> 
> SMJobSubmit is deprecated in 10.10. But the documentation mentions no 
> replacement.
> What to use instead?


You’re not supposed to start it - launchd/XPC services is supposed to start it 
for you. You’re supposed to register it as a LaunchAgent/Daemon, creating the 
launchd.plist file and when you need the service, it starts and when you don’t, 
it’s stopped again. I keep reading this is all part of the security of XPC, 
only the system can kick one off. 
_______________________________________________

Cocoa-dev mailing list ([email protected])

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to