Mac OS X:从目录服务获取当前用户的当前用户名和主目录

时间:2010-11-24 00:25:02

标签: objective-c macos directoryservices

我的应用程序是用Objective-C编写的。如何通过目录服务获取当前登录用户的用户名和主目录?

详情: 我的Cocoa应用程序使用getenv(“USER”),getenv(“HOME”)获取当前用户名和主目录。显然,如果用户通过目录服务登录,则此功能无法正常工作。我正在做一个chdir($ HOME)然后运行这个命令:   login -fp $ USER 并且它拒绝它,因为我认为登录通过目录服务来验证用户,并且他在该系统中的用户名可能与$ USER的值不同。同样,他可能在目录服务中指定的主目录与$ HOME不同。

1 个答案:

答案 0 :(得分:18)

尝试NSUserName()NSHomeDirectory()