2

ログインアイテムを作成していて、現在のユーザーを取得できるかどうかを調べています。

たとえば、ユーザー「Test」でログインし、root権限でexeを実行すると、

char *user  = getenv("USER");

ユーザーは「ルート」です。

私の予想される答えは「テスト」です。

どうすれば入手できますか?

ログインアイテムにObjectiveCコードを入れることができるかどうかわかりませんか?ログインアイテムでNSUserNameを使用することはできますか?

NSString *user = NSUserName();
4

2 に答える 2

8

関数SCDynamicStoreCopyConsoleUser必要です。

QA1133には、いくつかの関連する詳細と警告が記載されています。

于 2011-09-28T22:19:55.030 に答える
0

ログインアイテムはCocoaアプリケーションにすることができるので、NSUserName()(Foundation btwにある)を使用できます。

たぶんgetuid()/ geteuid()も見てください

于 2011-09-28T15:24:20.407 に答える