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

Не могу выполнить CreateOleObject в процедуре (class(TService))   Найти похожие ветки 

 
SRGWizard   (2002-05-24 11:34) [0]

Доброе время суток!
Я столкнулся с проблемкой, и не знаю как это обойти.
Суть проблемы в том, что есть сервис (class(TService)). Работает нормально.
Но при получении некоторого события, нужно поднять ActiveX
и запустить его функцию или процедуру.
Сбой при вызове CreateOleObject...


 
AFROLOV ©   (2002-05-24 12:03) [1]

Код в студию!


 
SRGWizard   (2002-05-24 12:32) [2]

{ TSrvBooks = class(TService)
ServerSocket1 : TServerSocket;
.........
end;
var
SrvBooks : TSrvBooks;

{....} - запись в лог
}

procedure TSrvBooks.ServerSocket1ClientRead(Sender : TObject; Socket : TCustomWinSocket);
begin
try
with Socket do
SendText(QueryDataBase(ReceiveText, RemoteAddress, RemoteHost));
except on E : Exception do begin {....} Abort; end; end;
end;

function TSrvBooks.QueryDataBase(ItemText, ItemIP, ItemHost : string) : string;
var
Answer, Error : string;
Obj : Variant;
begin
try
Obj := CreateOleObject("SRGWizard.SrvBooks");
try
Answer := Obj.QueryString(ItemText, ItemIP, ItemHost, 0);
if Obj.Error <> "" then Answer := "Error";
Result := Answer;
except Result := "Error"; {....} Abort; end;
except Result := "Error"; {....} end;
end;


 
Кулюкин Олег ©   (2002-05-24 12:45) [3]

А доступ к базе не через АДО?
Может CoInitialize/CoUninitialize сделать?


 
Shaman_Naydak ©   (2002-05-24 13:19) [4]

Надо, надо..
на старт/стоп


 
SRGWizard   (2002-05-24 13:29) [5]

Спасибо большое всем!
Работает!
Забыл я про CoInitialize/CoUninitialize.



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

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



Память: 0.46 MB
Время: 0.009 c
14-18146
Suntechnic
2002-05-03 18:48
2002.06.06
Вот прислали намедни...


1-17914
stupid
2002-05-27 15:23
2002.06.06
Нужно узнать размер файла после сжатия.


1-18019
Qwer
2002-05-24 01:45
2002.06.06
Порядковый номер дня в году


1-18017
Константин
2002-05-24 10:51
2002.06.06
Раскрытие окна на весь экран


3-17786
UncleRu
2002-05-15 15:37
2002.06.06
Oшибки InterBase




   Наверх