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