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

Вниз

Использование компонентов ADO в dll   Найти похожие ветки 

 
Kostafey ©   (2006-10-10 16:50) [0]

Прошу помощи у уважаемых мастеров. Необходимо подключиться  к СУБД MS SQL Server через dll и выполнить ряд SQL - запросов.
В dll добавляю форму (тобишь окно), подключаю к приложению (неявня загрузка) - все ОК. Но стоит лишь добавить в форму dll-ки тот же ADOConnection (компиляция dll успешна) при запуске же приложения с такой dll-кой возникает ошибка. Подскажите пожалуйста как тут быть ?


 
stone ©   (2006-10-10 17:19) [1]

попробую угадать
CoInitialize(nil) забыл


 
Kostafey ©   (2006-10-10 18:51) [2]


> CoInitialize(nil)

ой а что это такое.
Можно небольшой пример кода ?

Я говорю о том, что компонент (ADJConnection) ни к чему не подключен.
А само подключение проблем не вызывает
(т.е. если делать так же как и для обычного приложения, возможно для dll-ки есть какая-то специфика).


 
Джо ©   (2006-10-11 06:28) [3]

> (т.е. если делать так же как и для обычного приложения,
> возможно для dll-ки есть какая-то специфика).


Например:

> [1] stone ©   (10.10.06 17:19)


 
Джо ©   (2006-10-11 06:29) [4]

> Можно небольшой пример кода ?

А вот так и пиши (перед началом работы с данными, например, при загрузке DLL):

CoInitialize(nil);

8^)


 
Kostafey ©   (2006-10-11 17:03) [5]


> А вот так и пиши (перед началом работы с данными, например,
>  при загрузке DLL):CoInitialize(nil);


Спасибо большое это помогло, правда CoInitialize не нашел, вот так написал:

uses ComObj;
...
CoInitializeEx(nil,1);


Теперь все запускается, правда при закрытии приложения возникает ошибка, мол обращение по такому-то адресу, память не может быть "read"


 
stone ©   (2006-10-11 17:27) [6]


> uses ComObj;
> ...
> CoInitializeEx(nil,1);

uses ActiveX;
CoInitialize(nil);
При выходе
CoUnInintialize;

но ошибка может быть и не здесь


 
Kostafey ©   (2006-10-11 21:38) [7]

А где писать CoUnInintialize? Я попробовал в событии закрытия основного ока приложения - ошибка осталась.


 
Kostafey ©   (2006-10-12 18:19) [8]

Пробовал вызывать CoInitialize в dll и в приложении, в разных события (закрытие, уничтожение окна) - ничего не получается, при выходе выдает ошибку, хотя вся работа прошла успешно.

Что же делать ?



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

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

Наверх





Память: 0.46 MB
Время: 0.039 c
9-1137878222
Аццкий_рыцарь:)
2006-01-22 00:17
2006.10.29
Переход с DelphiX на UnDelphiX


2-1160791839
Incognito
2006-10-14 06:10
2006.10.29
Дождаться завершения выполнения другой функции


15-1159680143
Александр_
2006-10-01 09:22
2006.10.29
Перевести с бумаги в AutoCAD


2-1160549479
evgenij_
2006-10-11 10:51
2006.10.29
Sectors Read


4-1150136401
redlord
2006-06-12 22:20
2006.10.29
перехват сообщений чужого окна





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский