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

Вниз

DataSnap сервер (RemoteDateModule) как сервис NT   Найти похожие ветки 

 
BorisUK   (2003-04-09 09:28) [0]

Добавил RDM в сервис... вроде все работает но если сервис не запущен, то попытка установить соединен евсеравно удается... экземпляр RDM создается и сервис на секунду стартует, но сразу (на стороне сервера) происходит попытка его (сервис) закрыть и потому имеем сообщение о том что типа "вы правда ходите закрыть СОМ сервер - там есть еще не завещенные конекты... ля ля ля"
Хотелось бы чтоб когда сервис не запущен отказывать в соединении...
Подскажите как это можно сделать?

Пробовал
procedure TMyRDM.RemoteDataModuleCreate(Sender: TObject);
begin
if not SvcStarted then Exception.Create("Service not Started");
end;

procedure TMySvc.ServiceStop(Sender: TService; var Stopped: Boolean);
begin
SvcStarted :=false;
end;

procedure TMySvc.ServiceStop(Sender: TService; var Stopped: Boolean);
begin
SvcStarted :=true;
end;

Это не работает... как бы клиенту ошибку в виде сообщения об отказе в коннекте послать???


 
BorisUK   (2003-04-09 15:32) [1]

Эээх...
Спрошу по другому.
Как запертить создавать экземпляр RDM, входящего в состав сервиса... если этот сервис не запущен???
Задача не ординарна - помогите решить силой коллективной мысли плз :)


 
sniknik   (2003-04-09 16:10) [2]

хотя и не понимаю зачем такая связка нужна, и с трехзвенкой только недавно столкнулся (просто пробы делал)
но, варианты

TDataSetProvider создавать в рантайме после получения подтверждения что сервис работает. (на клиенте будут отказы не правильный провайдернэйм)

описать метод (вызывать с клиента перед подключением) где возвращать статус сервиса. и там решать работать не работать.

в обоих случаях экземпляр RDM создастся и количество коннектов будет расти но работать клиент не сможет.

и третий вариант закрыть все до попытки создать RDM (ну на самом деле тут не уверен, до это или после ), но закрытие сервера из главной формы ->
procedure TForm1.FormShow(Sender: TObject);
begin
if not EnableRun then Close;
end;
у меня никаких вопросов не задает, а подключение клиента завершается ошибкой. (судя по всему тебе это и надо, но требует привязки к твоей структуре программы (не уверен что у тебя чтото показывается, сервис все же))



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

Форум: "Базы";
Текущий архив: 2003.04.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.012 c
14-91536
Dudao
2003-04-11 05:27
2003.04.28
Opera


1-91270
Mamuka
2003-04-17 10:33
2003.04.28
TListView


14-91529
BJValentine
2003-04-10 10:39
2003.04.28
Глюки программера


1-91402
Viktor1
2003-04-16 16:42
2003.04.28
На форме не появляются компоненты.


1-91246
paxer
2003-04-15 17:45
2003.04.28
Как в переменной типа vaiant сохранить Pointer?





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