• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: listing users
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: listing users


  • Subject: Re: listing users
  • From: Jean-Daniel Dupas <email@hidden>
  • Date: Wed, 16 Apr 2008 15:53:39 +0200


Le 16 avr. 08 à 15:09, Alexander Cohen a écrit :

Whats the best way in cocoa to get a list of users on a machine for 10.4 and up?

thx

AC

The most reliable way to do it is to use Directory Services.
There is no official Obj-C DS API (The DSObjcWrapper is part of darwin and is open sources but it's a private framework) and the C API is fairly complex.


But, POSIX call uses Directory Service API under the hood, so using the BSD API is probably the way to go:

#include <sys/types.h>
#include <pwd.h>

int main () {
  struct passwd *p;

while ((p = getpwent())) {
// Note: p->pw_uid is declared as an unsigned int,
// but Darwin uses it as an signed value (nobody has id -2), so you have to cast it
if ((int32_t)p->pw_uid >= 500) {
printf ("id %d = '%s'\n", p->pw_uid, p->pw_name);
} else {
printf ("(system) - id %d = '%s'\n", p->pw_uid, p->pw_name);
}
}


  return 0;
}

_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


References: 
 >listing users (From: Alexander Cohen <email@hidden>)

  • Prev by Date: Re: listing users
  • Next by Date: Re: NSDrawer resizing problem - no longer resizes when parent window resized
  • Previous by thread: Re: listing users
  • Next by thread: Re: NSDrawer resizing problem - no longer resizes when parent window resized
  • Index(es):
    • Date
    • Thread