如何取得 Win2000 AD 內使用者的相關資訊?

Delphi.ktop討論區 – 如何取得 Win2000 AD 內使用者的相關資訊?

在站上查到「使用Delphi讀取NT或2000的帳號及密碼做認證」的方法後,覺得這個功能超好用的,不用自已管理帳號密碼,真好 ^_^
但是、接下來就是想要從 NT網域伺服器 or AD 裡取得User的相關資料,例如:使用者的姓名、部門、說明…. 等等的欄位資訊.
是否有高手能分享心得 or 函式 ?
先謝謝囉 ~

function
NetUserGetInfo(ServerName:PWideChar;UserName:PWideChar;Level:DWORD;var
Buf:Pointer):Longint;stdcall;external ‘netapi32.dll’ Name
‘NetUserGetInfo’;

function NetApiBufferFree(Buff: Pointer):Integer;stdcall;external
‘netapi32.dll’ Name ‘NetApiBufferFree’;

function GetUserInfo(Server, User: String): String;

var
    UserInfo : PUSER_INFO_3;
    lpwUser : Array[0..255] Of
WideChar;
    lpwSrv : Array[0..255] Of WideChar;

begin
    StringToWideChar(Server, lpwSrv, SizeOf(lpwSrv));
    StringToWideChar(User,
lpwUser, SizeOf(lpwUser));

    NetUserGetInfo(lpwSrv,lpwUser,2,Pointer(UserInfo));

    Result := UserInfo.usri3_comment;

    NetApiBufferFree(UserInfo);

end;

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *

What is 6 + 7 ?
Please leave these two fields as-is:
IMPORTANT! To be able to proceed, you need to solve the following simple math (so we know that you are a human) :-)