Невозможность повторной записи без перезапуска сервиса

#1
Столкнулся с довольно странной проблемой, странное поведение записи встроенным планировщиком ProgDvbService.exe
По порядку:

Система Windows 8.1 x64 с WMC , UAC не отключен, но понижен до минимального уровня, позволяющего запускать Metro приложения. Работа под админским профилем. ProgDVB x32 версии 7.08.5Pro

Итак:

Включаем комп,загружаемся. Ставим ProgDVB, затем запускаем его от имени администратора. Проверяем,запущен ли сервис ProgDvbService.exe - сервис ProgDvbService.exe не запущен. Тогда переключаем режим планировщика на Микрософт, и снова переключаем на Prog Dvb Service. Снова перезагружаем комп. Запускаем ProgDVB и снова проверяем сервис - наконец-то запущен.

Далее запускаем саму ProgDVB, планируем запись с помощью сервиса ProgDvbService.exe. Закрываем окно ProgDVB и ждем. Через какое-то время запись стартует, и в папке для записей появляется нужный файл, то есть все хорошо и здорово. По окончании записи смотрим этот файл - все проигрывается. Запускаем ProgDVB, и через какое-то время планируем запись уже ДРУГОЙ программы, второй по времени (на том же или другом канале - не важно). Закрываем окно ProgDVB и ждем старта записи и появления файфа в папке.

В назначенное время файл в папке не появляется, то есть запись не стартует.

Снова запускаем ProgDVB, в планировщике видим что запись так и не стартовала, то есть задание не удалилось. То есть запись реально не стартовала, хотя сервис все также висел в памяти, а в файле с заданиями scheduler.dat это задание присутсвует. То есть ProgDVB про ПОВТОРНОЙ записи эту самую вторую по счету (по времени) запланированную запись НЕ ПРОИЗВЕЛ.

ДАЛЕЕ - закрываем окно ProgDVB, заходим в сервисы Windows и перезапускаем сервис ProgDvbService.exe
После этого снова запускаем ProgDVB, снова планируем запись,закрываем окно и ждем появления файла в папке. В назначенное время файл появляется и далее все как описано начиная с первого абзаца.

ТО ЕСТЬ - по какой-то причине сервис ProgDvbService.exe не позволяет осуществлять повторную (вторую по счету) запись без собственно своего перезапуска. То есть если после первой записи запрограммировать вторую, при этом не перезапускать комп или сам сервис, то вторая запись не стартует. Если же сервис или комп перезапустить, то запись стартует, но после этого все опять повторяется - вторичная запись не стартует.

ВОПРОС - это баг или фича???
Очень неудобно просто. Можно ли как-то сделать автоматический перезапуск сервиса после окончания записи??? Потому что вручную не оч хочется все время его перезапускать... Или это только на Win8.1 так работает??

Прошу автора прояснить ситацию, также отозваться пользователей с похожей проблемой. Пожалуйста потестируйте.

P.S. Да и кстати в реестре пришлось править путь к файлу ProgDvbService.exe, иначе вообще ничего не работало.

Re: Невозможность повторной записи без перезапуска сервиса

#3
Prog wrote:Баг. Ставьте последний пререлиз и присылайте лог неудачной записи.
А это где можно посмотреть?? Запись вообще не происходит, она стартует только если во временном интервале записи запустить саму ProgDVB, вот тогда видно что запись сразу запускается. То есть сервис запись не запускает вообще.

Еще раз повторю проблему:

1. Если после перезагрузки компа запустить Prog DVB и зашедулить запись, закрыть окно ProgDVB, то запись сервисом корректно стартует.

2. Если же НЕ ПЕРЕЗАГРУЖАЯ КОМП снова сделать те же действия - снова запустить ProgDVB и снова зашедулить какую-либо запись, то запись сервисом уже не стартует, вообще ничего не происходит, если же в этот временной отрезок запустить ProgDVB то запись начинается в программе.

3. Если перезапустить комп ИЛИ ПЕРЕЗАПУСТИТЬ СЕРВИС без перезагрузки компа, и снова проделать те же действия - то запись опять корректно стратует, как в п. 1

То есть баг в том что невозможно осуществить вторую по счету зашедуленную запись без перезагрузки либо компа либо сервиса.

Система Win 8.1 x64, ProgDVB теперь 7.08.6 x32 , работаю под админом с минимально пониженным UAC

Re: Невозможность повторной записи без перезапуска сервиса

#5
Prog wrote:Включите пожалуйста лог (Options->Debug->Logs) и пришлите мне лог после этой ситуации (неудачной записи). У меня кажется уже был подобный отзыв и вроде уже исправлял там.
Вы знаете, лог создаётся только при первичной нормальной записи, то есть когда все работает как надо. При вторичной записи как я описывал - логи не меняются, то есть например я запускаю ProgDVB в 19-06 , планирую запись на 19-15, закрываю ProgDVB, запись в 19-15 соответственно не стартует, а логи как были на момент запуска ProgDVB в 19-06 так и остались. Нужно их выкладывать?? При первичной записи логи создаются, там видно что запись стартует. Но собственно при первичной записи проблем и нет. Выкладываю оба лога в общем. Но при повторной записи как я уже написал лог вообще никак не отреагировал на попытку этой записи, более того в планировщике запланированная запись осталась.
Logs_FIRST RECORD.zip
(11.59 KiB) Downloaded 136 times
Logs_SECOND RECORD.zip
(13.41 KiB) Downloaded 144 times
Выкладываю также файл шедулера с запланированной повторно записью (которая не сработала)
scheduler.zip
(563 Bytes) Downloaded 114 times

Re: Невозможность повторной записи без перезапуска сервиса

#7
Prog wrote:Лог с кривой кодировкой, в следующей версии исправлю. Но вот сам ProgDVB похоже не вышел а упал. Лучше без плагинов такие вещи делать. Точнее плагины не обязаны работать из под сервиса.
ну вообще ProgDVB закрылся корректно, и открылся потом тоже, то есть никаких окошек как обычно после падения бывает не выскакивало.

меня еще настораживает что после остановки записи какие то данные все равно пишутся в лог. то есть сервис что-то куда-то пишет даже если запись уже остановилась?? не оч хорошо, т.к. у меня сама система стоит на SSD

по поводу "без плагинов" - мне Ваша программа только из-за плагинов и интересна, в противном случае смотрел бы цифровое кабельное и не парился.

в следующей версии вы исправите только вывод лога? или поправите саму запись шедулером? что ожидать?

мне кажется правильнее было бы после окончания записи просто перезапускать сервис и все, разве нет? то есть чтобы сервис как-то сам автоматически перезапускался как только запись завершается. тогда и проблем с повторной записью не будет.

Re: Невозможность повторной записи без перезапуска сервиса

#8
Лог в пререлизе должен быть коректным. Но судя по тому что есть, ProgDVB движок упал. Драйвера DVB карты после такого мог повиснуть. посмотрите после первой записи, поможет ли перезапуск устройства в device manager.
И попробуйте без сервиса писать с запуском ProgDVB. Это более дружелюбно по отношению к плагинам.

Re: Невозможность повторной записи без перезапуска сервиса

#9
Prog wrote:Лог в пререлизе должен быть коректным. Но судя по тому что есть, ProgDVB движок упал. Драйвера DVB карты после такого мог повиснуть. посмотрите после первой записи, поможет ли перезапуск устройства в device manager.
И попробуйте без сервиса писать с запуском ProgDVB. Это более дружелюбно по отношению к плагинам.
Вы мне скажите - реально ли починить запись с помощью сервиса? Потому что без плагинов и с запуском мне пользоваться записью смысла нет.

И почему бы просто не реализовать автоматический перезапуск сервиса после окончания записи?? Это решило бы проблему нестарта вторичной записи. да и всех последующих запланированных тоже.

если бы драйвер зависал то ProgDVB ничего бы при повторном запуске не воспроизводил, пришлось бы перезагружать комп. А воспроизведение нормально работает, можно сколько угодно раз в течении сеанса винды запускать и закрывать прогу для просмотра.

Проблема ТОЛЬКО ОДНА - нестартование записи сервисом, запланированной второй по счету в планировщике!
Поэтому не знаю что там где падает, скорее всего сам сервис просто зависает. ибо помогает решить проблему его перезапуск.

Сделайте пожалуйста рестарт сервиса после окончания записи и проблема будет решена.

Re: Невозможность повторной записи без перезапуска сервиса

#11
Prog wrote:Это прочто частный случай. Пловина драйверов падают совсем, и требуют перезапуска ПК. Если конечно дело в этом.
Так запись можно поправить, или это невозможно? Стоит ждать чего-то? Или так вручную и перезапускать сервис перед каждой записью?
Можно ли просто реализовать рестарт сервиса после окончания записи??

Re: Невозможность повторной записи без перезапуска сервиса

#12
Это очень спецефическая ситуация. То что плагин вообще из сервиса запускается - уже великолепно. Но можно попробывать подобрать другой ещё более стабильный. Ну и проверить ещё раз раз что движок действительно падает. Может вы лог скопировали до его закрытия.

Re: Невозможность повторной записи без перезапуска сервиса

#14
Prog wrote:И попробуйте без плагина.
без плагина у меня ничего не запишется, ну если только попробовать писать какие-то фришные каналы.
да и как бы если первая по счету запись в шедулере записывается корректно с плагином, при чем же здесь плагин тогда

я еще раз готов подтвердить, что после записи ничего не падает и не зависает - ни программа, ни dvb карта.
так как если открыть программу, то она корректно запускается, со всеми плагинами и т.п.

если бы карта зависала, то картинки бы не было, я знаю что это за ситуация, очень редко но она бывает и с записью это никак не связано

также если бы после записи некорректно завершался движок или программа, то при запуске программа выдала бы окно с предложением обычного запуска или сброса настроек. ничего это не происходит.

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

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

тогда не очень понятно зачем проверять работу без плагина, то есть если дело в плагине - то нет смысла возиться с алгоритмом перезапуска сервиса или что?

хочу понять ход Ваших мыслей просто

Re: Невозможность повторной записи без перезапуска сервиса

#15
Я не видел в логе следов закрытия движка, по этому думаю что он упал. И плагин мог быть тому причиной. По этому для начало нужен эксперемент без него. С логом разумеется.
А вообще это эстремальная ситуация. С планином лучше запускать UI ProgDVB, они(!!!) это требуют.