Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Сервис  (Прочитано 12860 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« : 27-09-2005 05:28 » 

Всем Драсьте!

Такой вопрос: я написал свой сервис. Он успешно работает, но мне теперь нужно передавать ему определенные параметры для их выполнения, во время написания этого сервиса я все параметры записла в исходнике. Т.е. мне нужно написать прогу (типа конфигуратор этого сервиса), которая будет передавать парметры.

Как это сделать? Передавать через реестр?

Сервис запускается системой при загрузке виндов и выполняется на сервере.

Спасибо!
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
npak
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #1 : 27-09-2005 09:20 » 

Есть множество способов передать данные в сервис.

1.  Используя базовые средства межпроцессного взаимодействия: TCP сокеты, pipes.  Сервис выступает в роли сервера TCP или сервера pipes, утилита конфигурации подсоединяется к серверу и передаёт ему данные.  Так, например, реализован Cisco VPN клиент -- код для создания VPN соединения работает в сервисе, клиентское приложение устанавливает TCP соединение с сервисом и передаёт настройки пользователя.

2.  Используя средства удалённого вызова: RPC, DCOM.  Сервис выполняет роль сервера RPC или DCOM, клиент вызывает методы сервера.  Пример для DCOM опубликован в MSDN http://msdn.microsoft.com/webservices/com/default.aspx?pull=/library/en-us/dncomg/html/localserv.asp

3.  Используя файловую систему или реестр.  Сервис отслеживает изменения некоторого заданного файла (файл настроек) или ключа в реестре. Клиентское приложение открывает файл или ключ, и пишет нужные значения, затем закрывает файл/ключ.  Сервис получает оповещение об изменении, открывает, считывает.

Выбирай, что тебе больше подходит.
Записан

UniTesK -- индустриальная технология надежного тестирования.

http://www.unitesk.com/ru/
McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #2 : 29-09-2005 10:04 » 

Ну вот теперь я могу передавать параметры! Но возник еще один вопрос, сервис не хочет работать на тех машинах где не установлен билдер! Подключаю библиотеки vcl.h,IdMappedPortTCP.hpp! Все работает нормально, но при попытке сделать Релиз и отключения Динамик РТЛ и Буилд рунтайм, вылетает куча ошибок! Пробовал добавить в проект различные библиотеки связанные с ошибками!

Помогите пожалуйста, как запустить сервис под Винды без установленного Билдера???
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #3 : 30-09-2005 06:06 » 

Народ вы хоть что-нибуль ответте, а складывается впечатление что вы не знаете!!! или просто не прочитали?
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #4 : 30-09-2005 07:00 » new

честно признаЮсь: НЕ знаю Улыбаюсь
Записан

kroum
Интересующийся

ua
Offline Offline

« Ответ #5 : 30-09-2005 07:55 » 

Попробуй отключить Dynamic RTL и Runtime packages, но откомпилировать в Debug.

В свое время разбираться было некогда, но у билдера какие-то проблемы при компиляции в режиме Release, если используются DLL.
В частности, был один проект - MDI, в котором все дочерние окна были "сунуты" в DLL. Так вот, в Debug все отрабатывало как часы, а если компилили Release - дочерние окна даже не пытались появляться.

Плюс, можно поставить прерывание где-то в середине кода (правда, я так делал для Descktop-приложений), и когда программа на нем остановится посмотреть пункт меню (для BCB6) View->Debug Windows->Modules. Появится окно с перечнем всех модулей, используемых на момент прерывания данным приложением. Исключая системные DLL и пр. сформируешь список тех модулей, которые, помимо твоей программы, нужно будет перенести на компьютер, где нет билдера.
Записан
McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #6 : 30-09-2005 08:15 » 

У меня не используются никаких DLL, т.е. ты хочешь сказать что для нормально работы прийдется по любому продавать клиенту как сервис так и библиотке?
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #7 : 30-09-2005 08:23 » 

И кстате я не замечал косяков в сборке проектов под релизом! И в данном случае я уже перепробовал различные вариации, вот что получается: В режиме релиза - собирается, без use dynamic RTL - собирается, осталось еще одну галочку снять и все в порядке, но как только убираемя галочку Build with runtime pakcages, начинают сыпаться Fatal Error!!!
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #8 : 03-10-2005 03:50 » 

Что разве никто не может помочь???
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #9 : 03-10-2005 07:27 » 

Всем спасибо я разобрался!
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #10 : 03-10-2005 08:29 » 

Прежде временно я тему закрыл, продолжение... У меня теперь сервис работает на машинах где нет Билдера только тогда когда в папке лежат файлы *.bpl, как мне сделать что-бы этих файлов не было!
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
kroum
Интересующийся

ua
Offline Offline

« Ответ #11 : 03-10-2005 08:50 » 

Необходимость переноса *.bpl на компьютер с не установленным CBuilder/Delphi - это либо не снятая "галка" "Build with runtime packages" на вкладке Packages свойств проека, либо невозможность статического линкования компонент из необходимых *.bpl-пакетов, если данная "галка" снята.

Если "галка" снята - попробуй найти что-нибудь на сайте Indy - разработчиков компонента IdMappedPortTCP: http://www.indyproject.org/

Сразу "грешу" на Indy, поскольку со статической линковокой VCL-компонентов у меня таких проблем еще не возникало.
Записан
McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #12 : 04-10-2005 04:15 » 

В общем я так и не разобрался вчем проблема, но все заработало. После не логичных манипуляций библиотеками (пальцем в небо) и возвратом все в исходное состояние (оставил все как и было раньше), все собралось и заработало без *.bpl!

Всем СПАСИБО!
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines