Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.03;
Скачать: CL | DM;

Вниз

Получение e-mail пользователя из Active Directory   Найти похожие ветки 

 
Lexer ©   (2006-07-20 18:50) [0]

Нужно получить e-mail указанный в свойстве пользователя.
Думал ничего сложного - NetUserGetInfo. но...
USER_INFO_0,1,2,3,10,11,20 не содержат такой информации :(


 
oxffff ©   (2006-07-20 22:55) [1]

Скорее всего придется использовать LDAP или ADSI.


 
oxffff ©   (2006-07-20 22:58) [2]

Active Directory Service Interfaces
Purpose

Active Directory Service Interfaces (ADSI) is a set of COM interfaces used to access the features of directory services from different network providers. ADSI is used in a distributed computing environment to present a single set of directory service interfaces for managing network resources. Administrators and developers can use ADSI services to enumerate and manage the resources in a directory service, no matter which network environment contains the resource.

ADSI enables common administrative tasks, such as adding new users, managing printers, and locating resources in a distributed computing environment.

Where Applicable

Network Administrators can use ADSI to automate common tasks, such as adding users and groups, managing printers, and setting permissions on network resources.

Independent Software Vendors and end-user developers can use ADSI to "directory enable" their products and applications. Services can publish themselves in a directory, clients can use the directory to find the services, and both can use the directory to find and manipulate other objects of interest. Because Active Directory Service Interfaces are independent of the underlying directory service(s), directory-enabled products and applications can operate successfully in multiple network and directory environments.


 
oxffff ©   (2006-07-20 23:13) [3]

Нашел
The IADsUser interface
get_EmailAddress


 
lexer ©   (2006-07-21 11:00) [4]

oxffff, большое спасиба, поюзаю ADSI, думаю направление правильное, а то меня что-то к MAPI потянуло


 
lexer ©   (2006-07-21 18:42) [5]

Огромное спасибо oxfff, вот что у меня в итоге получилось, может кому пригодится:

uses ActiveX, ActiveDs_TLB, ComObj;
procedure TForm1.BitBtn1Click(Sender: TObject);
var
 Usr: IADsUser;
 Comp: IADsComputer;
 Cont: IADsContainer;
begin
 try
   Usr := GetObject("LDAP://CN=Иванов Иван,CN=Users,DC=CIT") as IADsUser;
   FUserEmail :=  Usr.EmailAddress;
 except
   on E: EOleException do
   begin
     ShowMessage(E.message);
   end;
 end;
end;

function TForm1.GetObject(const name: string): IDispatch;
var
 Moniker: IMoniker;
 Eaten: integer;
 BindContext: IBindCtx;
 Dispatch: IDispatch;
begin
 OleCheck(CreateBindCtx(0, BindContext));
 OleCheck(MkParseDisplayName(BindContext, PWideChar(WideString(name)), Eaten, Moniker));
 OleCheck(Moniker.BindToObject(BindContext, nil, IDispatch, Dispatch));
 Result := Dispatch;
end;



Страницы: 1 вся ветка

Текущий архив: 2006.09.03;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.027 c
2-1155263684
HoT@biCH
2006-08-11 06:34
2006.09.03
Вывод интернет денег


1-1153412058
kaif
2006-07-20 20:14
2006.09.03
Так как все-таки перекомпилировать рантайм библиотеки VCL?


2-1155224863
Финжер
2006-08-10 19:47
2006.09.03
Ярлык, Объект, Проводник. Функша.


15-1155063322
Ketmar
2006-08-08 22:55
2006.09.03
delphi2006 -- чего нового по сравнению с d7.


2-1155372371
Steplerr
2006-08-12 12:46
2006.09.03
CheckBox ы в TreeView е