Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.05.09;
Скачать: CL | DM;

Вниз

AppServer shut down: Проблема при подключенных клиентах ...   Найти похожие ветки 

 
Tonie ©   (2002-04-25 12:34) [0]

Доброго времени суток

Необходимо принудительно выключить сервер в ситуации когда есть активные RemoteDataModules, функция CoDisconnectObject работает в случае когда сервер с одной нитью, если же каждый модуль имеет собственную созданную с помощью TThreadedClassFactory то RemoteDataModule не разрушается и при выключении получаем сообщение о том что существуют подключенные клиенты.

Буду рад любым идеям и комментариям :-)


for i := 0 to pred(Screen.DataModuleCount) do
begin
if Screen.DataModules[i] is TrdmBase then
begin
p := (Screen.DataModules[i] as TrdmBase).MarshalRdmInterface;
OleCheck(CoGetInterfaceAndReleaseStream(IStream(p),
IRdmBase,
Rdm));

CoDisconnectObject(Rdm, 0);
end;
end;

TrdmBase = class(TRemoteDataModule, IrdmBase)
private
FClnCallbackStream :pointer;
function GetRdmInterfaceStream :pointer;
...
public
...
property MarshalRdmInterface :pointer read GetRdmInterfaceStream;
...
end;

function TrdmBase.GetRdmInterfaceStream: pointer;
begin
Result := nil;
OleCheck(CoMarshalInterThreadInterfaceInstream(IrdmBase,
ComObject,

IStream(FRdmInterfaceStream)
));
Result := FRdmInterfaceStream;
end;



 
Romkin ©   (2002-04-25 12:55) [1]

Тебе просто не нужно выдавать это сообщение?
Установи ComServer.UIInteractive := false;


 
Tonie ©   (2002-04-26 18:14) [2]

На самом деле, при зрелом размышлении, действительно только это и нужно.

Большое спасибо :-)



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

Текущий архив: 2002.05.09;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
1-26161
Varg
2002-04-24 18:32
2002.05.09
При Запуске - только иконка в трее.


3-26037
BillyJeans
2002-04-12 10:39
2002.05.09
Помогите с индексами....


1-26113
Сатир
2002-04-24 15:10
2002.05.09
TreeView: Insert Image


1-26158
NNN
2002-04-24 11:42
2002.05.09
Использование процедур из других модулей.


3-25991
Yuraz
2002-04-15 15:46
2002.05.09
2 вопроса, 1) как проверить на компе есть ли ADO библ.