ご質問させて戴きます。
ユーザアカウントを列挙したいのですが、どうすればよろしいでしょうか?
現在のログインユーザは、簡単に参照できるのですが、良い方法があれば、
ご教授お願いします。
Win32API の NetUserEnum() を使います。
具体的なサンプルコードは以下にあります。
[Torrys's Delphi]
http://www.swissdelphicenter.ch/torry/showcode.php?id=428
ここまで必要ないとは思いますが、Project JEDI のページに、
関連定義のライブラリもあります。
LanManager.zip
http://www.delphi-jedi.org/apilibrary.html
(Mozilla Public License Version 1.1)
ちなみに、取得するユーザーアカウントの内容にもよりますが、
アカウント名だけよければ、DEKOさん紹介のサンプルを以下のように
変更することで、アカウント名のみ取得できるはずです。
USER_INFO_0 = record
usri0_name: LPWSTR;
end;
var
UserInfo: lpUSER_INFO_0;
begin
//略
//NetUserEnumの第二引数が「0」になります
NetApiStatus := NetUserEnum(nil, 0, 0, lpBuffer, 0, EntiesRead,
TotalEntries, ResumeHandle);
//略
ツイート | ![]() |