2016-07-26 3 views
0

У меня есть приложение для какао, которое должно получить список процессов. После включения приложения песочницы, я получаю /bin/ps: Operation not permitted. Есть ли другой способ сделать это, совместимое с песочницей приложений? Я запускаю это через NSTaskЗапуск/bin/ps с поддержкой NSTask с поддержкой приложений Sandboxing

+0

Вот почему песочница является одним из самых глупейших идей на настольных компьютерах, начиная с конца 40-х годов. –

+0

Какие атрибуты процессов вам интересны? –

+0

@mahaltertin путь – denniss

ответ

1

Вы не можете запустить ps из песочницы, потому что это корневая программа set-uid.

Нет другого документального способа получения списка процессов. Существует, однако, недокументированный API, описанный в libproc.h. Я не уверен, что вы можете использовать его из песочницы, но это стоит попробовать.

0

Вы можете использовать [[NSWorkspace sharedWorkspace] runningApplications], чтобы получить список всех процессов. Это вернет массив NSRunningApplications.

https://developer.apple.com/reference/appkit/nsworkspace https://developer.apple.com/reference/appkit/nsworkspace/1534059-runningapplications https://developer.apple.com/reference/appkit/nsrunningapplication

+0

, который не возвращает список всех процессов. просто список пользовательских процессов. – denniss

Смежные вопросы