On 2011 Feb 16, at 12:05, Ken Thomases wrote: > If it's actually an application, and you can target 10.6, use > -[NSRunningApplication executableArchitecture].
Thanks, but need 10.5 support. > Otherwise, you can use sysctl() as illustrated in this Tech Q&A > <http://developer.apple.com/library/mac/#qa/qa2001/qa1123.html>. Somewhere in > the kinfo_proc is the flag you're looking for. Maybe, but if so it's not documented: struct kinfo_proc { struct extern_proc kp_proc; /* proc structure */ struct eproc { struct proc *e_paddr; /* address of proc */ struct session *e_sess; /* session pointer */ struct _pcred e_pcred; /* process credentials */ struct _ucred e_ucred; /* current credentials */ struct vmspace e_vm; /* address space */ pid_t e_ppid; /* parent process id */ pid_t e_pgid; /* process group id */ short e_jobc; /* job control counter */ dev_t e_tdev; /* controlling tty dev */ pid_t e_tpgid; /* tty process group id */ struct session *e_tsess; /* tty session pointer */ #define WMESGLEN 7 char e_wmesg[WMESGLEN+1]; /* wchan message */ segsz_t e_xsize; /* text size */ short e_xrssize; /* text rss */ short e_xccount; /* text references */ short e_xswrss; int32_t e_flag; #define EPROC_CTTY 0x01 /* controlling tty vnode active */ #define EPROC_SLEADER 0x02 /* session leader */ #define COMAPT_MAXLOGNAME 12 char e_login[COMAPT_MAXLOGNAME]; /* short setlogin() name */ #if CONFIG_LCTX pid_t e_lcid; int32_t e_spare[3]; #else int32_t e_spare[4]; #endif } kp_eproc; }; > This came up previously on Apple's mailing lists, so search the archives. Couldn't find anything in there. I found several people using kinfo_proc to get all kinds of process info, like this: http://www.nightproductions.net/dsprocessesinfo_m.html but nobody comes up with the running architecture. I suppose I could spend hours searching all three of Apple's open-source sites: http://opensource.apple.com/ http://www.apple.com/opensource/ http://www.macosforge.org/ to see if I could find the some code that fills in a kinfo_proc, but since the answer may in the end be "no", I'm going to forget this and use 'ps -ax -o flags' as I originally suggested. At least I have a proof-of-concept demo with that. Thanks for the ideas, guys. Jerry _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) 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: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com