Mac OS X: получить текущее имя пользователя и домашний каталог для текущего пользователя из службы каталогов - PullRequest
4 голосов
/ 24 ноября 2010

Мое приложение написано в Objective-C. Как я могу получить имя пользователя и домашний каталог текущего пользователя, вошедшего в систему, через службы каталогов?

Деталь: Приложение My Cocoa получает текущее имя пользователя и домашний каталог с помощью getenv («USER»), getenv («HOME»). Очевидно, это не работает правильно, если пользователь вошел в систему через службы каталогов. Я делаю chdir ($ HOME) и затем запускаю эту команду: логин -fp $ USER и он отклоняет его, потому что, я думаю, вход в систему проходит через службу каталогов для аутентификации пользователя, и его имя пользователя в этой системе может не совпадать со значением $ USER. Аналогично, он может иметь домашний каталог, указанный в службах каталогов, который отличается от $ HOME.

1 Ответ

18 голосов
/ 24 ноября 2010

Попробуйте NSUserName() и NSHomeDirectory().

...