Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> поток по работе с бд в службе, проблема при связке потока с службой 
V
    Опции темы
Kusik
Дата 19.6.2014, 14:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 9.12.2005
Где: Харьков

Репутация: нет
Всего: нет



Здравсвуйте. Подскажите пожалуйста,каким образом я могу связать модуль потока по работе с бд со службой? Есть приложение с формой,которое нормально работает.теперь,когда поток отлажен,необходимо сделать службу,но при попытке подвязать поток и нициализировать его параметры в службе ругается на следующее:
Код

TthreadAlerter.OnAlert:=Createmailinglist
Error: incompatible types: 'method pointer and regular procedure'

TthreadAlert: TOraAlerter  //из модуля потока

Procedure Createmailinglist;    //процедура по обработке алерта
Begin
//some action with orastoredproc

End;
Сделал пустую службу которую можно проинсталлить но при попытке подвязать поток ругается и не могу больше ничего сделать

Это сообщение отредактировал(а) Poseidon - 19.6.2014, 16:12
PM MAIL ICQ   Вверх
PointerToNil
Дата 19.6.2014, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



*


Профиль
Группа: Участник
Сообщений: 108
Регистрация: 17.6.2013

Репутация: нет
Всего: 6



сделайте Procedure Createmailinglist методом любого класса
PM MAIL   Вверх
drkot
Дата 22.6.2014, 04:22 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


Профиль
Группа: Завсегдатай
Сообщений: 1042
Регистрация: 5.5.2006

Репутация: нет
Всего: 8



Цитата(PointerToNil @  19.6.2014,  15:43 Найти цитируемый пост)
методом любого класса

Зачем?


Цитата(Kusik @  19.6.2014,  14:09 Найти цитируемый пост)
при попытке подвязать поток ругается

на что ругается, или как?


--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
Kusik
Дата 23.6.2014, 09:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 9.12.2005
Где: Харьков

Репутация: нет
Всего: нет



PointerToNil, спасибо,получилось. 
Теперь хотел узнать, а можно ли использовать параметры запуска службы из командной строки ( system.params[] ) в качестве параметров  службы (Tservice.params[]) в сервис менеджере. К примеру кроме ключа /install указывать парметры подключения к серверу бд username password servername,чтобы не записывать их в реестр, а запускать службу с этими параметрами? Спасибо
PM MAIL ICQ   Вверх
PointerToNil
Дата 23.6.2014, 16:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



*


Профиль
Группа: Участник
Сообщений: 108
Регистрация: 17.6.2013

Репутация: нет
Всего: 6



можно.
PM MAIL   Вверх
Kusik
Дата 24.6.2014, 07:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 9.12.2005
Где: Харьков

Репутация: нет
Всего: нет



Цитата(PointerToNil @ 23.6.2014,  16:46)
Можно

Исчерпывающий ответ)) я пытался парсить командную строку,когда инсталлирую службу и передавать servername,username и password в парметры запуска,но не получилось,т.к. параметр запуска readonly параметры.пробовал писать в реестр, OnAfterInstall,а потом грузить их при OnStart,но ничего не работает.т.е. служба запускается,но ничего не делает что должна делать. Когда вписываю в коде эти параметры констнтами,то все на ура. Единствееный простой способ, создавать инишник и прописывать их туда,а при запуске службы лоадить из инишника и инициализировать подключение к бд и все остальное. Лазил,искал,но не нашел,каким образом параметры командной строки можно передать в ккчестве параметров запуска и при старте их парсить
PM MAIL ICQ   Вверх
Kusik
Дата 24.6.2014, 15:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 9.12.2005
Где: Харьков

Репутация: нет
Всего: нет



Забил. Сделлал через инифайл и все прекрасно работает
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.0452 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.