Зависимости (Dependencies) сервиса под Windows

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
kostya
незнакомец
Сообщения: 4
Зарегистрирован: 08.04.2010 14:23:00

Зависимости (Dependencies) сервиса под Windows

Сообщение kostya »

Как создать зависимости в сервисе под Windows?

Создаю File->New->Daemon Application, в DaemonMapper создаю DaemonDef, у него в свойстве winbindings создаю dependencies, задаю имя службы, от которой зависит данный демон, компилирую, устанавливаю сервис ключиком -i. Сервис появляется в списке служб, но вкладка зависимостей в свойствах пуста.

Что делаю не так?

Lazarus 0.9.27
fpc 2.2.4
alaken
постоялец
Сообщения: 221
Зарегистрирован: 18.02.2010 08:02:13

Сообщение alaken »

у меня нет шаблона сервисов в Lazarus, как его добавить?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

Установите компонент из поставки daemon.
kostya
незнакомец
Сообщения: 4
Зарегистрирован: 08.04.2010 14:23:00

Сообщение kostya »

Оказалось, что lazarus не сохранял данные в файлe формы маппера, прописал вручную

Код: Выделить всё

      WinBindings.Dependencies = <      
        item
          Name = 'postgresql-8.4'
          IsGroup = False
        end>



еще 1 вариант создавать зависимости динамически в конструкторе маппера :

Код: Выделить всё

Constructor Create(AOwner : TComponent); override;

Код: Выделить всё

  
Constructor TDaemonMapper1.Create(AOwner: TComponent);
var
  D:TDaemonDef;
  Item:TDependency;
begin
  inherited Create(AOwner);

  D:=DaemonDefs.Add As TDaemonDef;
  D.DisplayName:='My Cool Daemon';
  D.Name:='mycooldaemon';
  D.DaemonClassName:='TClassDaemon';
  D.WinBindings.ServiceType:=stWin32;
  Item:=D.WinBindings.Dependencies.Add as TDependency;
  Item.Name:='postgresql-8.4';
  Item.IsGroup:=false;
end;       
Ответить