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

Вниз

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

 
IntruderLab   (2006-01-31 02:20) [0]

Доброго дня.
Ситуация такова, имеется функция, непосредственно работающая с базой данныз, БД MSSQLServer. Когда функция находится в Unit самой программы все нормально, как только я переношу функцию в dll начинаются глюки. Функция использует ADOTables и приведена далле. Упомяну, что пытался в uses DLL проекта укащать модуль OleAuto, Ole2, ничего хорошего правда не вышло, тем более в описание модулей OleAuto ясна сказано, что применение в DLL противопоказано :)
Приведу код функции:

**************************
uses
 ShareMem,   Windows,   Messages,   SysUtils,   Variants,   Classes,   Graphics,   Controls,   Forms,   Dialogs,   Menus,
 ComCtrls,   ImgList,   ExtCtrls,   Grids,   DBGrids,   DB,   ADODB,
 comobj,   comserv,OleAuto, Ole2;
**************************
procedure SaveBLOBPicture(var tab : TADOTable; img: TImage; fname: String);
var ms : TMemoryStream;
begin
 ms := TMemoryStream.Create;
 img.Picture.Bitmap.SaveToStream(ms);
 tab.Insert;
 (tab.FieldByName("" + fname + "") As TBlobField).LoadFromStream(ms);
 tab.Post;
 ms.Free;
end;

Подскажите как решить проблему


 
IntruderLab   (2006-01-31 02:24) [1]

Именно, от себя добавлю, что тут дело все в ADO, как в DLL работать с ADO - вот что мне важно, подскажите способ, далее сам разберусь :) Заранее спасибо


 
Digitman ©   (2006-01-31 09:23) [2]


> в описание модулей OleAuto ясна сказано, что применение
> в DLL противопоказано


> OleAuto cannot be used in a package DLL

У тебя что, package разве ?!

> To implement an OLE automation server in a package

Ты разве OLE automation server реализуешь в DLL ?!


> переношу функцию в dll начинаются глюки


Вот и рассказывай какие конкретно, вместо того чтобы заниматься фривольным переводом комментариев в борладовских юнитах ...


 
IntruderLab   (2006-01-31 09:46) [3]

Интересный подход, вобщем то DLL компилиться, а исполняемый фалы выдает ошибку, то есть по сути ADO не работает в DLL. Хочеться знать каким образом в DLL работать с ADO, вот и все. А о фривольности можно  долго рассуждать, особенно учитывая, что по первому образованию я психолог :)))))


 
Digitman ©   (2006-01-31 09:52) [4]


> исполняемый фалы выдает ошибку


.. и ее конкретное детальное описание здесь, в твоей ветке, очевидно, составляет важную государственную тайну.


> о фривольности можно  долго рассуждать


.. но факт остается фактом)


 
sniknik ©   (2006-01-31 11:01) [5]

Удалено модератором


 
Rem ©   (2006-01-31 13:02) [6]

При работе с DLL не передавайте указатели на объекты VCL.


 
Digitman ©   (2006-01-31 13:13) [7]

Удалено модератором


 
IntruderLab   (2006-01-31 13:31) [8]

Это уже не для этой конференции разговор-то, ну все равно закончим. Задам вопрос попроще, как мне в dll хранить объекты ADO: ADOConnection, ADOTable а так же формы с компонентами VCL или это не возможно?


 
Digitman ©   (2006-01-31 13:33) [9]


> IntruderLab   (31.01.06 13:31) [8]


> как мне в dll хранить объекты


Обычным образом.


 
IntruderLab   (2006-01-31 13:34) [10]

Для особо разговорчивых приведу фразу из моей психологической практики, когда клиент, у которого выявилась боязнь углов (бывает и очень часто) пытался мне объяснить почему он боиться острых предметов и выражение: можно на него очень сильно УПАДЕТСЯ.... вот так и я - силь УПАДДЕЛСЯ на это ADO


 
IntruderLab   (2006-01-31 13:35) [11]

не могу именно ADO запихнуь ругается


 
Digitman ©   (2006-01-31 13:42) [12]

Удалено модератором


 
sniknik ©   (2006-01-31 13:45) [13]

> Digitman ©   (31.01.06 13:42) [12]
ты бы это, полегче... хотя я тебя понимаю... ;)


 
sniknik ©   (2006-01-31 13:51) [14]

http://delphimaster.net/view/2-1138306299/
вот к примеру "аналог". "помогал" (в кавычках потому что толку нет, смысл слова потерялся), честно старался... но плюнул в конце концов.


 
Digitman ©   (2006-01-31 13:54) [15]

Я как собака - все понимаю а сказать не могу.


 
IntruderLab   (2006-01-31 13:54) [16]

Удалено модератором


 
Digitman ©   (2006-01-31 13:56) [17]

Удалено модератором


 
sniknik ©   (2006-01-31 13:59) [18]

http://delphimaster.net/view/2-1138306299/
или еще. этот вообще ставит себе целью получить "умный" ответ на "идиотский" вотрос.

может это такой же? тогда он просто из принципа не может этого сделать... (ошибку привести).


 
IntruderLab   (2006-01-31 14:06) [19]

Вобщем последний раз приведу вопрос без кода, если не получу ответ. Как, использую какие модули, какие ухищрения использовать компоненты ADO на хранимых в DLL формах.


 
Digitman ©   (2006-01-31 14:26) [20]

Удалено модератором


 
IntruderLab   (2006-01-31 14:35) [21]

Удалено модератором


 
Digitman ©   (2006-01-31 14:49) [22]

Удалено модератором


 
Rouse_ ©   (2006-01-31 14:50) [23]

Будете продолжать в этом же духе - ветка пойдет в корзину...


 
Digitman ©   (2006-01-31 14:52) [24]


> Rouse_ ©   (31.01.06 14:50) [23]


И тем самым ты, Саша, "поможешь" автору.


 
Rouse_ ©   (2006-01-31 14:54) [25]

Сергей, ну просто опять эти эмоции...
Ну ни к чему они. Я же много раз просил :(


 
Digitman ©   (2006-01-31 14:55) [26]


> Rouse_ ©   (31.01.06 14:54) [25]


Молчу.



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

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

Наверх





Память: 0.52 MB
Время: 0.016 c
2-1139921825
Evgen1976
2006-02-14 15:57
2006.03.05
стандартный QuickReport в Делфи


15-1139561322
HITMAN
2006-02-10 11:48
2006.03.05
Материнская плата!!!


15-1139490614
PARUS
2006-02-09 16:10
2006.03.05
Нажатие.


2-1140099642
Andrey235
2006-02-16 17:20
2006.03.05
Как установить DelphiX?


15-1139576650
denis24
2006-02-10 16:04
2006.03.05
компонент типа dateedit





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