Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.11.07;
Скачать: [xml.tar.bz2];

Вниз

Active Directory и функция ADsGetObject   Найти похожие ветки 

 
Yr2   (2004-10-22 21:14) [0]

Мастера, кто-нибудь работал с MS Active Directory из Delphi?
Все функции работы с Active Dir находятся в C:\WINNT\system32\activeds.dll (для Windows 2000); интерфейсы описываются в activeds.tlb. Но вся работа начинается с функции ADsGetObject, которая в MSDN_е описывается только для Cи (и есть вариант для бейсика). Пытаюсь использовать эту функцию в Delphi следующим образом:
объявляю как

function ADsGetObject(
 lpszPathName : LPWSTR;
 riid         : TGUID;
 var ppObject
                     ): HRESULT; stdcall; external "ActiveDs.dll";

причем в документации на Си она выглядит так:

HRESULT ADsGetObject(
 LPWSTR lpszPathName,
 REFIID riid,
 VOID** ppObject
);


и в результате запуска она всегда мне возвращает ошибку (т.е. ненулевое значение)...
может быть такое, что функция ДЛЛ-ки вообще не предназначена для запуска из Delphi??? (это мне такое мнение высказал один сотрудник)
А в общем, мне нужно получать параметры пользователей из Active Dir.


 
Yr2   (2004-10-22 22:15) [1]

вот елки... а все дело было в том, что ставить нужно не stdcall, а safecall.


 
Юрий Зотов ©   (2004-10-22 22:25) [2]

> может быть такое, что функция ДЛЛ-ки вообще не предназначена
> для запуска из Delphi???

А разве функция DLL знает, откуда ее вызывают? Не знает, и ей это глубоко по барабану.

Ее вызывают из двоичного кода, а каким уж там компилятором он был получен - какая разница? Лишь бы вызов был правильным, вот и все.



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

Форум: "Основная";
Текущий архив: 2004.11.07;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.032 c
14-1098103960
Оля
2004-10-18 16:52
2004.11.07
Привязка к компьютеру


14-1098332642
Dmitriy O.
2004-10-21 08:24
2004.11.07
Lotus Notes 6 & Delphi что лучше ?


3-1097042115
Леха
2004-10-06 09:55
2004.11.07
Параметры в запросе не работают.


1-1098376029
iat
2004-10-21 20:27
2004.11.07
как получить мин и макс значение по оси Х при увеличении


1-1098855306
wild_arg
2004-10-27 09:35
2004.11.07
OpenDialog и InitialDir property его





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский