Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.10.2008, 14:57   #1
luckyfuck
 
Регистрация: 17.10.2008
Сообщений: 9
Стрелка Соединение с Active Directory

Помогите, [уважайте себя]. Уже два дня парюсь, решил спросить на относительно специализированном форуме.

Задача тривиальная вроде как, необходимо подключиться к ActiveDirectory и извлечь список пользователей в визуальном виде.

Однако натолкнулся на большой пласт проблем, естественно связанных с большими пробелами в области технологий. Програмировал больше алгоритмические задачи на Паскале, совсем немного на Бейсике. А тут задача сделать визуальное приложение.. Сразу налетел на незнание техники подключений к AD, понятных и простых инструкций за два дня не обнаружил. Перепробовал от Delphi 7, Visual Studio 6, 2005, 2008. Нигде не обнаружил человеческих компонентов для работы с Active Directory.

Прошу помочь, написать что лучше использовать и КАК. Вот вроде как понятно написано про ADOQuery в Delphi, а вот как просмотреть результат выполнения или вывести ег ов список - не ясно. Опять-таки, говорят что технология ADO сама по себе не самое лучшее решение. Просьба не предлагать скриптовые языки: vbs, js, wsh.. нужно визуальное приложение.

Очень прошу объяснить на пальцах, что лучше использовать для решения этой задачи и как. Понятно что знаний не хватает, очень хотелось бы их восполнить. Как устроена сама AD представялю, вопрос только в программировании.

Последний раз редактировалось AlDelta; 17.10.2008 в 15:53.
luckyfuck вне форума Ответить с цитированием
Старый 17.10.2008, 15:30   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Относительно специализированный ответ с относительно специализированной ссылкой:
http://forum.ru-board.com/topic.cgi?forum=33&topic=2180
Вы уж не серчайте, что мы тут такие относительные специалисты...

Последний раз редактировалось mihali4; 17.10.2008 в 15:51.
mihali4 вне форума Ответить с цитированием
Старый 17.10.2008, 15:50   #3
luckyfuck
 
Регистрация: 17.10.2008
Сообщений: 9
По умолчанию

За что серчать-то Да, я уже написал о том, что пробовал компонент ADO в Delphi.. А вот как потом увидеть результат выполнения запроса мне не понятно Буду признателен за подробное объяснение. ну а если что, то будем уж вместе разбираться

Последний раз редактировалось luckyfuck; 17.10.2008 в 16:05. Причина: Эдит поста выше
luckyfuck вне форума Ответить с цитированием
Старый 17.10.2008, 20:40   #4
luckyfuck
 
Регистрация: 17.10.2008
Сообщений: 9
По умолчанию

Давайте что-ли более подробно.. А то совсем застрял. Опишу всё подробно.

В общем, я запускаю Borland Delphi 7, выбираю вкладку ADO и кладу на форму компонент ADOQuery(ADODB). Там такая кнопочка получается, которая есть ADOQuery1 в ObjectTree. Заполняю свойства этого объекта: CursorType - ctStatic (не знаю зачем это, порекоммендовали в одном примере на delphikingdom), ConnectionString - Use Connection String -Build - OLE DB Provider for Microsoft Directory Services - Для входа в сервер использовать: учетные сведения Windows NT (OK, OK).

В свойство SQL вставляю select distinguishedName,Name from 'LDAP:\rootDSE' where objectClass='user' or objectClass='group'

Теперь перехожу на вкладку Standart и кладу на форму объекты Button1 и Edit1. Кликаю два раза на Button1 и пишу код

Код:
Edit1.Text := ADOQuery1.SQL.Text;
Запускаю по F9, щелкаю на кнопку в поле Edit вижу запрос... А как собственно увидеть его результат???
luckyfuck вне форума Ответить с цитированием
Старый 18.10.2008, 13:31   #5
luckyfuck
 
Регистрация: 17.10.2008
Сообщений: 9
По умолчанию

Совсем тема встала =(

Обнаружил ADOQuery1.ExecSQL, теперь борюсь c сообщением "Таблица не найдена"... Неужели я один...
luckyfuck вне форума Ответить с цитированием
Старый 18.10.2008, 20:12   #6
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Цитата:
Запускаю по F9, щелкаю на кнопку в поле Edit вижу запрос... А как собственно увидеть его результат???
А-а-а, вот в чем вопрос... (сразу скажу, первый пост читал-читал, так и не понял, что ответить)
А где вы хотели бы "собственно увидеть его результат???"
Кнопку вы кинули на форму, эдит тоже. А компонент для отображения данных (вкладка Data Controls), а компонент для связи его же с ADOQuery (DataSource называется)?
Возьмите-ка на сайте клуба книжку про 100 компонентов Дельфи, откройте ее в отдельном окне и пусть она у вас всегда будет открытой на рабочем столе... Полегчает, я вам гарантирую.
Неплохо также заглянуть и в первую тему раздела форума "БД в Delphi".
mihali4 вне форума Ответить с цитированием
Старый 03.11.2008, 13:32   #7
luckyfuck
 
Регистрация: 17.10.2008
Сообщений: 9
По умолчанию

В общем, разобрался. Ошибка "Таблица не существует" - значит не видит сервер, а не видит потому что SQL прописан неверно в части 'LDAP:\rootDSE'. RootDSE не поддерживается также прозрачно как в Бейсике, а может и вообще не поддерживается. Пришлосб конкретизировать сервер, жестко вписывать его в запрос.
После того как сформировал правильный запрос, понял что ExecSQL не канает, поскольку предполагаются возвращаемые данные.. Так что уважаемый mihali4 направил меня по ложному пути.
Данные вывел в StringGrid.
ЗЫ. Книжка про 100 компонентов Дельфи совсем не рассматривает ADOQuery. В общем, всё нашел методом проб и ошибок.

Тему можно закрывать.
luckyfuck вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить список пользователей из Active Directory SJMS Работа с сетью в Delphi 3 29.11.2010 09:32
Программное добавление пользователя в Active Directory smilova Работа с сетью в Delphi 6 19.04.2010 01:12
Помощь с Active Directory banzai Windows 1 16.07.2008 21:44
Ошибка Active... delphin100 Операционные системы общие вопросы 9 09.04.2008 12:26