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 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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com
This email sent to [email protected]