Dlaczego * do * Windows kolejki drukowania czasami dławią się przy zadaniu drukowania

11

Wiesz, w jaki sposób kolejki wydruku w systemie Windows czasami przestają działać z zadaniem drukowania na początku kolejki, które po prostu nie drukuje i którego nie można usunąć? Czy ktoś wie, co się dzieje, kiedy to się dzieje?

Widzę to od NT4 dni i wciąż tak się dzieje w 2008 roku. Mówię o standardowych drukarkach laserowych podłączonych do IP - nic szczególnego. Obsługuję wiele serwerów i mnóstwo stacji roboczych i widzę, że dzieje się to kilka razy w roku.

Użytkownik zadzwoni, mówiąc, że nie może drukować. Podczas badania kolejki wydruku, która w moim przypadku będzie na ogół kolejką serwerową udostępnianą stacjom roboczym, znajdujesz zadanie drukowania, którego nie możesz anulować. Nie można również wstrzymać, ponownie zainicjować, nic.

Zatrzymywanie bufora jest zwykłą sztuczką i czasami działa. Czasami jednak widzę przypadki, których nawet nie można wyleczyć i których ponowne uruchomienie jest jedynym rozwiązaniem. Wstrzymaj kolejkę, uruchom ponownie, po powrocie zadanie może zostać usunięte. Po zniknięciu drukarka szczęśliwie powraca do normalnego stanu. Drukarka nigdy nie musi podejmować żadnych działań.

Uważam, że ponowne uruchomienie jest ostatecznością i nie podoba mi się to. Co do cholery może się dziać po zatrzymaniu procesu (buforowaniu) i ponownym uruchomieniu go nie usuwa problemu?

Nie jest też powiązany z żadnym producentem. Widziałem to na HP, Lexmarka, Canonie, Ricoh, na laserach, na ploterach ... Nie mogę powiedzieć, że kiedykolwiek widziałem to na matrycy punktowej.

Każdy ma jakieś pomysły na to, co się dzieje.

Ian

Ian Murphy
źródło
1
W przypadku mojego serwera wydruku wydaje się, że zadania są buforowane do 64,0 KB bez wyraźnego powodu. Nie zdarza się to jednak wystarczająco często, abyśmy mogli to naprawić - wiadomo, że drukarze są źli. EEEEVIIIIIILLLLLL.
tombull89
2
Pytanie za milion dolarów tutaj
Dan
1
@ tombull89 LOL. Ilekroć słyszę, że słowa nie mogą się wydrukować, zaczyna się kolejny koszmar. Myślę, że wszyscy straciliśmy godziny życia na tych piekielnych maszynach.
Ian Murphy,
Regularnie planowaliśmy odbijanie demona drukowania, ale to nie pomogło. Ile razy mogę dać +1 temu pytaniu ?! 1 000 000 $ pytanie!
Lizz,
1
Z mojego doświadczenia wynika, że ​​możesz rozwiązać ten problem bez ponownego uruchamiania, usuwając rzeczywiste pliki z katalogu buforowania, gdy bufor jest zatrzymany. Zdaję sobie sprawę, że to nie odpowiada na twoje pytanie, dlatego zostawiam je jako komentarz zamiast odpowiedzi, ale warto wspomnieć, że prawdopodobnie nie musisz restartować się.
davidcl

Odpowiedzi:

2

Moje doświadczenie to zwykle wadliwy sterownik druku. Nie mogę powiedzieć, ile razy musiałem zatrzymywać usługę buforu wydruku w systemach Windows, przejść do katalogu buforu wydruku (zwykle C: \ WINDOWS \ System32 \ spool \ PRINTERS) i usunąć tam pliki buforowania, następnie ponownie uruchom usługę buforu wydruku.

Z mojego doświadczenia wynika, że ​​najczęściej zawsze wiąże się to z problemem z czcionkami, który jest koszmarem w świecie skanowanych plików PDF.

Przepraszam, nie mam poprawki. Chciałem tylko powiedzieć, że czuję twój ból.

churnd
źródło
1
Dlaczego na serwerze wydruku są jakieś produkty do drukowania Adobe?
MDMarra,
Byłem za tobą, dopóki nie powiedziałeś o Adobe. Błędne sterowniki druku to moja podstawowa odpowiedź.
Evan Anderson
Miałem na myśli sposób, w jaki produkty komputerowe Adobe generują pliki PDF w systemach klienckich, które są wysyłane do serwerów sprintu. Zgadzam się, że był źle sformułowany.
churnd
1
@churnd Mogę potwierdzić, że OCR wykonane przez różne produkty Adobe jest wręcz złem. Niektóre glify są zniekształcone, co powoduje problemy z silnikiem czcionek systemu Windows, który jest wywoływany przez sterownik drukarki w celu renderowania tekstu. Ponieważ sterownik (a zatem także silnik czcionek) jest uruchamiany w kontekście procesu buforowania wydruku, może to powodować wszelkiego rodzaju spustoszenie.
Tonny
2
Istnieje mnóstwo złych sterowników drukarek warstwy 2, które są oparte na przykładowym kodzie źródłowym opublikowanym raz w MS SDK dla Windows 2000. W kodzie SDK był błąd: nie zwolnił uchwytu gdi po renderowaniu i drukowanie strony. W rezultacie proces buforowania wydruku straciłby uchwyt dla każdej drukowanej strony. Po 10.000 uchwytów (twardy limit ustawiony w jądrze NT, nawet w Win2012 / Win8) bufor wydruku ulega awarii. Zauważysz to tylko wtedy, gdy wydrukujesz więcej niż 10.000 stron między restartami.
Tonny