Re: NSWorkspace in a daemon
Re: NSWorkspace in a daemon
- Subject: Re: NSWorkspace in a daemon
- From: Nyxem <email@hidden>
- Date: Mon, 30 Nov 2009 16:51:03 +0100
So what is the right way to do this ?
Nyxem.
On Nov 30, 2009, at 4:37 PM, Jean-Daniel Dupas wrote:
>
> Le 30 nov. 2009 à 16:25, Bill Garrison a écrit :
>
>>
>> On Nov 30, 2009, at 9:17 AM, Nyxouf da ouf wrote:
>>
>>> Hi,
>>>
>>> I have an Obj-c program who run as a daemon, using launchd, and that look
>>> for NSWorkspaceDidMountNotification.
>>>
>>> *[[[NSWorkspace sharedWorkspace] notificationCenter] addObserver:self
>>> selector:@selector(diskDidMount:) name:NSWorkspaceDidMountNotification
>>> object:nil];*
>>> -(void)diskDidMount:(NSNotification*)notif
>>> {
>>> NSLog(@"disk did mount");
>>> }
>>>
>>> My problem is that when the daemon is launched as root the notification
>>> isn't catched, how can I solve this ?
>>
>> This probably has something to do with Mach namespaces.
>>
>> <http://developer.apple.com/mac/library/technotes/tn2005/tn2083.html#SECMACHBOOTSTRAPBASICS>
>>
>> The daemon launched as root gets its own Mach namespace, separate from other user-level processes on the box. The NSWorkspaceDidMountNotification probably won't cross the Mach namespace boundary between the root-based daemon and other user-level apps that might be listening for it.
>>
>> Bill
>
> AppKit is not daemon safe.
>
> http://developer.apple.com/mac/library/technotes/tn2005/tn2083.html#SECLIVINGDANGEROUSLY
>
>
> -- Jean-Daniel
>
>
>
>
> _______________________________________________
>
> Cocoa-dev mailing list (email@hidden)
>
> 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:
>
> This email sent to email@hidden
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden