В первую очередь, хочу поблагодарить моего постоянного клиента, у которого была выявлена ошибка Память не может быть "read" spoolsv.exe.
Со сбоями программ я борюсь постоянно. А в этот раз мне пришлось потратить немало времени чтобы найти правильное решение проблемы.
Итак, симптомы: старт системы, сообщение в окне о сбое диспетчера очереди печати "приложение обратилось к области памяти...". При этом наблюдается остановка самой службы.
Причина. Точную причину мне установить не удалось. На различных интернет ресурсах сообщалось о возможном заражении вирусами, но это не подтвердилось. Также указывалось на замену системных файлов какими либо приложениями. Вот здесь уже ситуация поменялась - программа проверки системных файлов сбоила по несколько раз при попытке запуска.
Решение проблемы.
Форумы мне конечно помогли в решении данной проблемы, но я лично считаю, что проблема решена в основном, благодаря мне. Первым делом я нашел и удалил (корректно удалил) все драйвера принтеров Canon LBP2900 и всех виртуальных принтеров. Разумеется, скачал самые новые драйвера и попробовал их установить.
Пару перезагрузок и проблема не исчезала. Тогда на вооружение была взята KB Microsoft, в частности патч, очищающий параметры службы диспетчера очереди печати.
Этот патч, спасибо разработчикам, помог, но... как говорится, "одно лечим - другое колечим": виртуальный порт USB из системы исчез. Чего я конечно же не ожидал.
Порт этот я восстановил, скопировав ветку реестра, отвечающую за мониторинг USB и поддержку USB принтеров как таковых с своего домашнего компьютера. Порт появился, драйвера свежие. Так почему не печатаем?
Ответ прост: установка драйверов, в виду проведения таковой удаленно, производилась неверно, принтер был постоянно включен и драйвер не мог установить связь с принтером.
Вот если бы я все эти операции проводил локально, я бы до сих пор был бы у клиента.
Что-ж, задачу я посчитал решенной, может и поспешно сделав такой вывод. |