2011-01-11 14 views
6

MacOS X 10.5でログインしたユーザの名前を取得するためのサンプルコードまたはCocoa APIを教えてください。あなたのプロセスがrootとして実行している場合はMac OS X 10.5でログインしたユーザ名を取得

#import <Foundation/Foundation.h> 

NSString *userName = NSUserName(); 
NSString *fullUserName = NSFullUserName(); 
+6

あなたの助けになった回答を受け入れるための礼儀正しい、btw。 – chacham15

答えて

24

Foundationフレームワークは、ユーザー名と完全なユーザー名を取得するための機能を提供します。 そして、現在のログインユーザが必要な場合は、systemConfiguretionフレームワークに存在する SCDynamicStoreCopyConsoleUser(SCDynamicStoreRef store, uid_t *uid, gid_t *gid) を使用できます。

は、関数にパラメータを渡すことで、他の情報を取得することができますCFStringRef cfName = SCDynamicStoreCopyConsoleUser(NULL, NULL, NULL);

として使用します。

+5

通常、クラスファイルテンプレートがすべて正しく設定されているため、MacアプリケーションでFoundationをインポートする必要はありません(MacのFoundationとAppKitの傘型フレームワークであるCocoaをインポートしてください)。 –

2