Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.02.06;
Скачать: [xml.tar.bz2];

Вниз

Как заставить нормально работать delphi- сервис при log of и on   Найти похожие ветки 

 
igornov   (2003-11-13 16:22) [0]

Hi All!

Помогите побороть проблему.

Написал на делфи сервис который периодически обновляет с сетевого ресурса конфигурационные файлы и реестр на локальных машинах. Кроме того он следит за одним процессом клиентского приложения и анализирует его на предмет простоев. Если время простоев превышает допустимое то приложение завершается.Для подсчёта простоев я запускаю этот сервис под системной учётной записью и с доступом к рабочему столу. Периодически перебираю все доступные окна где по заголовку ищу окно требуемого приложения. Потом нахожу связанный с этим окном процесс и беру его Kernel time+User Time. Вот так и считаю простои. Можно конечно было сразу искать процесс по имени, но это приложение могут запускать в тестовом режиме и тогда я не должен его трогать. Режим виден только по заголовку окна.
Кроме этого на базе этого сервиса реализована некая служба сообщений (mailslot). Обновление конфигурации делается по одному таймеру. Подсчёт простоев по другому. Всё прекрасно работает до тех пор пока пользователь не меняет профиль. Как только он меняет профиль - сервис вываливает (не всегда но часто) сообщение об ошибке типа "Память по адресу такому-то не может быть read". После этого падают все таймеры (обновление конфигурации и подсчёт простоев не работают), а остаётся рабочей только служба сообщений (то есть сдыхает не полностью).

Теперь вопрос: чего из выше описанного я не должен делать в момент закрытия рабочего стола юзера? Какие процессы происходят при этом в Windows и как на это должен реагировать мой сервис чтобы не делать ошибок?

Заранее благодарен за любую помощь.

С ув. Игорь Новосёлов
E-mail: igorn@ingok.com.ua


 
igornov   (2003-11-25 10:45) [1]

Удалено модератором
Примечание: Создание пустых сообщений


 
Digitman   (2003-11-25 12:04) [2]


> ошибке типа "Память по адресу такому-то не может быть read".
>


не "типа", а тебе конкретно (!!) сообщается, кто, инструкцией по какому адресу пытается получить доступ по чтению по такому-то адресу, в то время как прав на то у "читающей" инструкции нет.

это ж не Пушкину адресовано, а тебе ) ... для анализа причин возникновения ситуации, а не для "типа")

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


 
igornov   (2003-11-28 10:05) [3]

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


 
Digitman   (2003-11-28 10:19) [4]

LogMessage() на что ?
расставляй эти "ловушки" в сомнительных местах



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2004.02.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.036 c
14-16636
RealRascal
2004-01-14 17:18
2004.02.06
Надпись на батоне в несколько строк


1-16250
Petrovitch
2004-01-26 15:27
2004.02.06
Корректировка поля в DBGRID (SQL) как???


3-16109
3APA3A
2004-01-15 23:49
2004.02.06
Как в DBGrid засунуть данные из нескольких таблиц?


14-16623
Daemys
2004-01-14 12:38
2004.02.06
Гуманизм и милосердие


14-16589
syte_ser78
2004-01-15 15:11
2004.02.06
Удаление файла досовскими командами





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский