17.02.2019, 06:05 [+3 UTC]
в нашей команде: 3 393 чел. | участники онлайн: 5 (рекорд: 21)

:: РЕГИСТРАЦИЯ

задать вопрос

все разделы

правила

новости

участники

доска почёта

форум

блоги

поиск

статистика

наш журнал

наши встречи

наша галерея

отзывы о нас

поддержка

руководство

Версия системы:
7.69 (10.02.2019)
JS-v.1.33 | CSS-v.3.35

Общие новости:
10.02.2019, 21:59

Форум:
16.02.2019, 15:03

Последний вопрос:
16.02.2019, 13:32
Всего: 148762

Последний ответ:
16.02.2019, 15:37
Всего: 257791

Последняя рассылка:
17.02.2019, 03:45

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
23.04.2018, 23:07 »
svrvsvrv
Большое спасибо за доступный ответ! [вопрос № 193135, ответ № 276445]
28.06.2012, 19:16 »
Глух
Ваш второй совет помог.Спасибо. [вопрос № 186424, ответ № 271311]
12.10.2009, 21:41 »
саныч
Спасибо за ценный и профессиональный совет !!! [вопрос № 173204, ответ № 255341]

РАЗДЕЛ • .NET Framework / C# / Java

Создание программ на программной платформе .NET Framework и языках С# и Java.

[администратор рассылки: Коцюрбенко Алексей Владимирович (Модератор)]

Лучшие эксперты в этом разделе

Коцюрбенко Алексей Владимирович
Статус: Модератор
Рейтинг: 751
Зенченко Константин Николаевич
Статус: Старший модератор
Рейтинг: 399
solowey
Статус: Студент
Рейтинг: 363

Перейти к консультации №:
 

Консультация онлайн # 68541
Раздел: • .NET Framework / C# / Java
Автор вопроса: Шибанов Александр Константинов
Отправлена: 25.12.2006, 16:40
Поступило ответов: 1

Доброго вермени суток, уважаемые!
У друга-администратора возник ряд проблем связанный с добавлением пользователя, повышением прав пользователя во время работы и т.д.

Я понимаю, что это можно сделать на Win Api, но зная монструозное их количество, даже не знаю откуда начать искать.

Может, к примеру, эти фунцкии начинаются с префикса admin?

Возможно вы подскажите?

Состояние: Консультация закрыта

Ответ # 133647 от Gladiator

Здравствуйте, Шибанов Александр Константинович!
Вот, к примеру, я добавляю пользователей следующим образом:

uses ..., ActiveX, ActiveDs_TLB, ComObj;

function 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;
function AddNewUser(ComputerName,NewAccount: string): string;
var
Usr: IADsUser;
Grp: IADsGroup;
Comp: IADsContainer;
Group: string;
begin
Result:='Ошибок нет';
case Lang of
1049: Group:= 'Администраторы';
else Group:= 'Administrators';
end;
try
Comp := GetObject('WinNT://'+ComputerName+',computer') as
IADsContainer;
Usr := Comp.Create('user', NewAccount) as IADsUser;
Usr.SetInfo;
except
on E: Exception do begin
Result:='Create new user. Ошибка = '+E.Message;
end;
end;
try
Grp := GetObject('WinNT://'+ComputerName+'/'+Group) as IADsGroup;
except
on E: Exception do begin
Result:='Get group. Ошибка = '+E.Message;
end;
end;
try
Grp.Add ('WinNT://'+ComputerName+'/'+NewAccount);
except
on E: Exception do begin
Result:='Create user to group. Ошибка = '+E.Message;
end;
end;
end;

ActiveDs_TLB.pas создаётся из библиотеки типов C:\WINDOWS\system32\activeds.tlb.


Консультировал: Gladiator
Дата отправки: 26.12.2006, 09:14

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.13559 сек.

© 2001-2019, Портал RFPRO.RU, Россия
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.69 от 10.02.2019
Версия JS: 1.33 | Версия CSS: 3.35