powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Отладка старта сервиса
23 сообщений из 23, страница 1 из 1
Отладка старта сервиса
    #40070865
hlopotun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть проект DataSnap windows сервиса.
На компе разработчика скомпиленный сервис и ставится и запускается из под системной учётки.
На моём компе инсталлируется но при попытке запуска вываливает исключение 0x0eedfade Ошибка 1053 (разраб. пока сам не понимает в чём дело, предлагает завтра разбираться но время давит, хочу попробовать покопать сам).
После поисков в сети возможной причины найдено это и это упоминание о проблемме. Оба ведут в сторону анализа стека, но как его посмотреть в этой ситуации? Знаю что можно отлаживать сервис в режиме Run>>Attach to process, но для этого его надо сначала запустить (что бы к нему визуально прицепиться), тут же проблема возникает в момент старта.
Как посоветуете быть?

Спасибо.
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40070869
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hlopotunКак посоветуете быть?

Жди разработчика. Это выше твоего уровня.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40070877
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hlopotun
Как посоветуете быть?
Логировать блоки кода. В смысле, логи вставлять между блоками кода.
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40070903
hlopotun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
работает такое решение:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
uses
    ........
   unitDebugService;
    ......
begin
  if (paramCount > 0) and (SameText(ParamStr(1), '-DEBUG')) then
  begin
    FreeAndNil (Application);
    Application := TDebugServiceApplication.Create(nil);
  end;

  //... the rest of the normal DPR code
end.


юнит unitDebugService .
но при старте из IDE всё отрабатывает как положено.
Что то с правами походу.
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40070904
hlopotun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
YuRock
hlopotun
Как посоветуете быть?
Логировать блоки кода. В смысле, логи вставлять между блоками кода.

там логгирования хватает, не доходит до этого кода.
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40070905
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hlopotun
YuRock
пропущено...
Логировать блоки кода. В смысле, логи вставлять между блоками кода.

там логгирования хватает, не доходит до этого кода.
Значит вставь для начала запись в лог после begin в файле dpr. Узнаешь - дойдет ли.
Может, и нет. Встречал, что винду перегружать приходилось, по другому служба работать не начинала. Не шучу.
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40070907
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hlopotunЧто то с правами походу.

Исключение 0x0eedfade это вылетевшее из экспортируемой функции исключение. ЕМНИП это
ошибка работы в памятью. В-первых, надо во всех экспортируемых функциях код обносить
try-except, во-вторых аккуратно с памятью работать.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40070914
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockМожет, и нет.

Это будет означать, что исключение вылетает из секций Initialization, только и всего.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40070925
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
YuRockМожет, и нет.

Это будет означать, что исключение вылетает из секций Initialization, только и всего.Скорей всего, но не факт. Бывают и внешние проблемы. И антивирус, и глюки винды.

Так или иначе, для начала надо узнать, куда именно "не доходит" - может, до program begin и доходит, или до первого initialization, это пока неизвестно. Но это возможно узнать с помощью логов.
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40070936
GunSmoker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
0eedfade - это код для Delphi исключений. Т.е. это банальный
Код: pascal
1.
raise Exception.Create('Kaboom!');


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

hlopotunЗнаю что можно отлаживать сервис в режиме Run>>Attach to process, но для этого его надо сначала запустить (что бы к нему визуально прицепиться), тут же проблема возникает в момент старта.
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
unit UnitDelay;

interface

implementation

initialization
  Sleep(30000);
end.



Код: pascal
1.
2.
3.
4.
5.
6.
7.
project ProjectService;

uses
  UnitDelay,
  ...;

...


и у тебя будет 30 секунд, чтобы подключить отладчик.
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40070949
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hlopotun
Есть проект DataSnap windows сервиса.

midas.dll?
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40070984
hlopotun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GunSmoker,

спасибо! трюк с паузой помог.
Важный момент, Отладчик должен был быть запущен с правами админа, иначе отладчик просто не видит сервис (на этом вчера и споткнулся).
Конечная проблема была в том что сервис обращался к файлу лога по виртуальному пути (subst) а не по физическому, тут и происходило исключение которое по понятной причине не могло быть записано в лог. Почему обращение к файлу по виртуальному пути (через subst) не срабатывает не совсем понятно, на компе разработчика это проблем не вызывает. Поменял путь на физический всё заработало.
И да, в реестре таймаут на старт сервисов увеличил с 30 секунд до 60 дабы всё вписывалось по времени.
Для таких случаев надо научиться слать осмысленные сообщения в log Windows. Чем и займусь в ближайшее свободное время.

Всем спасибо за участие и помощь, проблема решена.
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40071006
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hlopotun
Почему обращение к файлу по виртуальному пути (через subst) не срабатывает не совсем понятно
Т.к. сервис запускается из-под другого юзера не факт, что твой subst там вообще актуален.
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40071008
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hlopotun
Для таких случаев надо научиться слать осмысленные сообщения в log Windows.
Там тоже может не сработать без соответствующих прав.
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40071010
hlopotun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rgreat,

да, скорее всего так есть. Непонятно почему на другом компе это работает.
Там сервис из под такого же пользователя стартует.
Будем разбираться ...
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40071011
hlopotun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rgreat
hlopotun
Для таких случаев надо научиться слать осмысленные сообщения в log Windows.
Там тоже может не сработать без соответствующих прав.


в логе windows были сообщения об ошибке при старте сервиса (оттуда собственно код ошибки и взят), просто они автоматом сгенерированы и потому несут мало смысла. Тут как раз и можно внести изменения.
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40071012
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вместо subst лучше использовать NTFS directory junction или symbolic link.

FAR Manager это умеет делать удобно.
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40071019
hlopotun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rgreat
Вместо subst лучше использовать NTFS directory junction или symbolic link.

FAR Manager это умеет делать удобно.

a Firebird с ними будет работать?
С subst не работает.
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40071040
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hlopotun,

Должен.
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40071042
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rgreatДолжен.

Зря ты это сказал, он же теперь базу положит на сетевой диск...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40071043
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Вот не уверен что ntfs link умеет в сетевые диски.
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40071049
Fr0sT-Brutal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hlopotun
Для таких случаев надо научиться слать осмысленные сообщения в log Windows. Чем и займусь в ближайшее свободное время.

OutputDebugString в помощь
...
Рейтинг: 0 / 0
Отладка старта сервиса
    #40071097
hlopotun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

rgreatДолжен.

Зря ты это сказал, он же теперь базу положит на сетевой диск...


ну настолько нет, я конечно пару раз глупости тут написал, не подумав, хотя в принципе потом быстро понял где сглупил.
Но чтобы базу! и чтобы в такое место! (с) :)
Кое что я знаю тоже и вдобавок за мной приглядывают старшие коллеги ;)
А то что вопросы не стесняюсь задавать, ну, не всё же можно знать сразу, где то надо или спросить или долго разбираться читать и гуглить. На это надо время, так и дети с голоду могут ноги протянуть ... Хотя конечно если есть время стараюсь разбираться сам.

Спасибо всем кто помогает, когда то помогу и я кому то.
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Отладка старта сервиса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]