Czyszczenie bufora wydruku (spoolera)


 

Ostatnimi czasy wielokrotnie zdarzyło mi się przyjmować wyzwania jakie rzucają drukarki, zaczynając od prostej atramentówki biurowej kończąc na korporacyjnych „kombajnach do drukowania”. Były to problemy z drukowaniem wynikające z różnych czynników, które skutecznie blokują nasz oczekiwany wydruk. Owe problemy mogą objawiać się w postaci braku papieru w drukarce, zacięciem papieru w rolkach, niewyjaśnionym pojawieniem się czynnika zewnętrznego skutecznie blokującego czujniki, błędy systemowe czy też niespodziewany zanik prądu (niekoniecznie z powodu niezapłaconej faktury :)), kończąc na ekstremalnym wybuchu fusera (przyznam, że ten ostatni na prawdę skutecznie blokuje użytkowników przed drukowaniem).

W wielu przypadkach należy wyczyścić bufor wydruku. Przeglądamy listę oczekujących dokumentów i usuwamy zalegające. Proste prawda? A co jeśli i to nie pomaga? Usuwamy, a pomimo wszystko dokumenty dalej zalegają, nam zależy na czasie i wydruku, a drukarka nie wykazuje inicjatywy?

Przystępujemy więc do działania. Pokażę Wam jak w prostym skrypcie możemy szybko i skutecznie to zrobić:

Uruchamiamy Konsolę CMD, zatrzymujemy usługę Bufora wydruku, do tego celu użyjemy polecenia net służącym do zarządzania usługami:

net stop spooler

Teraz przystępujemy do oczyszczania naszego Spoolera drukarki. Odwołamy się do tego prostym poleceniem del, podając jednocześnie lokalizację dla Spoolera, czyli:

del /q /f /s „%systemroot%\system32\spool\PRINTERS\*.*”

Polecenie ma zaimplementowane następujące flagi:

-q – cichy tryb nie żąda potwierdzenia usunięcia,

-f – wymusza usuwanie plików tylko do odczytu,

-s – usuwa określone pliki ze wszystkich podkatalogów,

W podanej ścieżce widać dwie gwiazdki, które stanowią o usuwaniu wszystkich plików z folderu.

Włączamy ponownie naszą usługę spoolowania:

net start spooler

Od teraz drukarka posłusznie będzie drukować dla nas to czego zapragniemy. Posiadając zaplecze poleceń, napiszmy sobie przykładowy skrypt, który jednym kliknięciem zdejmie fatum z drukarki.

@echo off
title Czyszczenie Spoolera Drukarki
echo Czyszczenie bufora wydruku.
net stop spooler
echo Uno momento, usuwam zalegające dokumenty. :)
del /q /f /s „%systemroot%\system32\spool\PRINTERS\*.*”
net start spooler
echo Finish

Skrypt możemy wykonywać zdalnie na maszynach używając do tego opisywanych wcześniej narzędzi PSTools.

Mam nadzieję, że przyda Wam się w batalii z drukarkami, tym samym niosąc szybką pomoc dla Użytkowników. Zachęcam do dzielenia się informacjami, jak Wy sobie radzicie w sytuacjach kiedy drukarka się zaczyna buntować


Podobne Tematy:

  • Uzytkownik drukarek

    Poszukuję info, jak kontrolować ilość i z jakich drukarek Windows wykonuje drukowanie i ile drukuje stron
    kazda z uzytych drukarek, aby porownać koszty drukowania i wydajnosci atramentu

    Poza tym zauwazyóem „byka”:
    „na prawdę” pisze się razem: naprawdę.

  • Użytkownik drukarek

    Przyganiał kocioł garnkowi; literówka w moim poście: zauważyłem :)

  • Arek

    Te komendy obsługi windowsa stają się gorsze od komend linuksa. w linuksie można poczytać o przełącznikach w manualu a w windowsie coraz częściej się grzebie w jakichś magicznych cyferko-literkowych tekstach……….. a to czyszczenie bufora wygląda tak prosto jak elementarz

  • Tom

    Odkopię trupa, a co…
    Bardzo fajny skrypcik, sam tak robię, ale… bezużyteczny dla zwykłego użytkownika. „net stop” w Win7 i wyżej wymaga podniesienia uprawnień, o czym Autor nie wspomniał.