如何在objective-c中获取macosx登录用户名

时间:2010-05-22 09:37:07

标签: objective-c cocoa macos

请告诉我如何在objective-c中获取当前登录用户的名称或mac机器名称(如果可能)。感谢

3 个答案:

答案 0 :(得分:32)

答案 1 :(得分:6)

C函数:getpwuid()返回struct passwd:

       struct passwd {
           char   *pw_name;       /* username */
           char   *pw_passwd;     /* user password */
           uid_t   pw_uid;        /* user ID */
           gid_t   pw_gid;        /* group ID */
           char   *pw_gecos;      /* user information */
           char   *pw_dir;        /* home directory */
           char   *pw_shell;      /* shell program */
       };

----------------------代码----------------

#include <pwd.h>
register uid_t uid;
struct passwd *uid_pw;
uid = geteuid ();
uid_pw = getpwuid (uid);
strcpy(uname,uid_pw->pw_name)

//类似其他信息

答案 2 :(得分:0)

您可以使用NSUserName()。这将返回当前登录用户的名称。

NSString *userName = NSUserName();