Часть кода от HardwareGrowler:
NSWorkspace *workspace = [NSWorkspace sharedWorkspace];
NSNotificationCenter *center = [workspace notificationCenter];
[center addObserver:[VolumeNotifier class] selector:@selector(volumeDidMount:) name:NSWorkspaceDidMountNotification object:nil];
[center addObserver:[VolumeNotifier class] selector:@selector(volumeDidUnmount:) name:NSWorkspaceDidUnmountNotification object:nil];
[center addObserver:[VolumeNotifier class] selector:@selector(volumeWillUnmount:) name:NSWorkspaceWillUnmountNotification object:nil];
Затем вам нужно реализовать методы реагирования на уведомления аля
+ (void) volumeDidUnmount:(NSNotification *)aNotification;
{
...
}
Для всей реализации проверить http://growl.info/source.php
В исходном пакете перейдите на страницу Extras / HardwareGrowler и проверьте VolumeNotifier.h/m
UPDATE:
Ответ Петерса выше этого. Пожалуйста, рассмотрите возможность использования дискового арбитража, если вы столкнулись с этой проблемой.