Вниз
Скачать: CL | DM;

динамические ADO в потоках   Найти похожие ветки 

← →
_Anton   (2005-06-22 10:54) [0]

Возможно ли в принцепе создавать динамически объекты ADO_Connection и ADO_Query в отдельном потоке?
пробовал так:

ADOC_Load_File       = new  TADOConnection(this);
ADOQ_Load_File_Base  = new  TADOQuery(this);

ADOC_Load_File->Name             = "ADOC_Load_File";
ADOC_Load_File->LoginPrompt      = false;
ADOC_Load_File->KeepConnection   = false;
ADOC_Load_File->Provider         = "MSDAORA.1";
ADOC_Load_File->ConnectionString = DataModule1->Get_ADOC_For_select_ConnectionString();

ADOQ_Load_File_Base->Name        = "ADOQ_Load_File_Base";
ADOQ_Load_File_Base->Connection  = ADOC_Load_File;
ADOQ_Load_File_Base->SQL->Add("select id, direction, name, description from ex_connectors where direction="I" order by name");

в итоге ничего не выходит, компилятор не дает создать объект
со ссылкой this на поток.
Если так нельзя, то остается одно - динамически создавать в
главном потоке, а потом синхронизировать;
Может существует более красивое решение?


← →
ЮЮ ©   (2005-06-22 11:04) [1]

>компилятор не дает создать объект со ссылкой this на поток

Создай с nil. Ибо, поток, естестественно, не может содержать компонеты, а невизуальному компоненту по барабану, кто его Parent, только за удаление сам отвешаешь.


← →
ЮЮ ©   (2005-06-22 11:06) [2]

кто его Owner, конечно


← →
Digitman ©   (2005-06-22 11:18) [3]


> Может существует более красивое решение?


ADOC_Load_File := TADOConnection.Create(nil);
try
.. что угодно ...
finally
 ADOC_Load_File.Free;
end;

куда уж "красивее" ..


← →
_Anton   (2005-06-22 15:01) [4]

Всем спасибо.
Поставил создание обьектов ADO в конструктор
удаление - в диструктор класса;

NULL - работает



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
4-1117829436
PIF
2005-06-04 00:10
2005.07.31
Создание ярлыка


4-1116811498
boalse
2005-05-23 05:24
2005.07.31
Узнать серийный номер винта (не тома)....


1-1121318797
tim
2005-07-14 09:26
2005.07.31
сворачеванье в трей


8-1111910730
sashik
2005-03-27 12:05
2005.07.31
opengl


6-1113916300
Alpine
2005-04-19 17:11
2005.07.31
Как изменить соединение с интернотм по умолчанию ?




   Наверх