crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Проблема с запуском сервиса (qtservice)
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
nzy Дата 28.4.2010, 4:28
 
Цитата(zerling @ 10.6.2009, 12:13) *
Из под Админа переставил - помогло!!
Привык просто что всё из-под пользователся ставится нормально и даже не подумал о админе..



Нужно скопировать qt*.dll, используемые сервисом в папку .exe. Или на крайний случай в windows/system32. Так как сервис запускается по системной учетной записью, а для неё системная среда немного другая (пути не выставлены, непример).
zerling Дата 10.6.2009, 12:13
  Из под Админа переставил - помогло!!
Привык просто что всё из-под пользователся ставится нормально и даже не подумал о админе..
Litkevich Yuriy Дата 10.6.2009, 11:24
  zerling, я свой не пробовал делать. Но со штатным примером у меня проблем не было.
Службу устанавливал залогинившись под админом.
ViGOur Дата 10.6.2009, 11:03
  А сервис у тебя проинстален?

Вот прочитай, может чего неправильно делаешь и поможет: An Interactive Service
zerling Дата 10.6.2009, 10:29
  Добрый день.
Использую qtservice 2.6 opensource под Windows XP, QT 4.3.4.

В общем проблема такая: сервис отказывается запускаться если вход в систему настроен "с системной учётной записью" и пишет ошибку 1053:Служба не ответила на запрос своевременно.
Если настроить чтоб входил с моей рабочей учётной записью то сервис стартует нормально.

Код писал "на коленке" чтоб бысто посмотреть как оно работает.

main.cpp
CODE
#include <QtCore>
#include "service.h"
int main(int argc, char **argv)
{
QString name("MyService1");
MyService service(argc, argv,name);
return service.exec();
}

service.h
CODE
#include <QtService.h>
#include <QtCore>
class MyService : public QtService<QCoreApplication>

{
public:
MyService(int argc, char **argv, const QString&name):QtService<QCoreApplication>(argc, argv, name)
{
setServiceDescription("A service implemented with Qt");
setServiceFlags(QtServiceBase::Default);
};
~MyService(){};

protected:
void start(){};
void stop(){};
void pause(){};
void resume(){};
void processCommand(int code){};
};

testservice.pro
CODE
TEMPLATE = app
TARGET =
include (c:/RAZRAB/QTService/src/qtservice.pri)
DEPENDPATH += . release
INCLUDEPATH += .

# Input
HEADERS += service.h
SOURCES += main.cpp


В общем-то для моей текущей задачи не так важно какая учётная запись, но хочется разобраться я что-то не так делаю или так должно быть.
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 10.4.2020, 10:33