프린터로 인쇄하는 경우 인쇄를 취소하거나 삭제를 하는 경우가 있는데...
이때 아직 인쇄를 시작하지 않는 것들은 프린터 대기열에서 금방 삭제가 되는데 아래와 같이 인쇄 중이었던 딱 한놈이 삭제되지 않는 경우를 자주 접하셨을 겁니다. (오랜 시간이 지나면 결국 삭제되기는 합니다 ㅎ)
잘못된 형식의 이미지 링크입니다.
시스템에 따라 삭제될때까지 수분에서 수십분까지 걸리는데 문제는 대기목록이 완전히 삭제될때까지 인쇄가 불가능합니다. 급하지 않는 경우면 그냥 기다리면 언젠가는 지워져서 크게 상관이 없는데 당장 인쇄해야하는 상황에서는 엄청나게 똥줄이 타게 됩니다.
이런 경우 바로 삭제하는 하는 방법이 있는데 아래와 같이 하면 됩니다.
처음에는 굉장히 번거롭게 느껴지지만 몇 번 해보면 순식간에 처리 가능합니다.
1. 아래와 같이 윈도우 검색창에 '서비스'라고 입력하고 앱 항목의 서비스 콘솔을 실행해 줍니다.
잘못된 형식의 이미지 링크입니다.
2. 서비스에서 'Print Spooler' 항목을 찾아 마우스 오른쪽 버튼을 누른 후 중지를 눌러 서비스를 중지시킵니다. 이때 서비스 창을 닫지 않고 그대로 둡니다.
잘못된 형식의 이미지 링크입니다.
3. 윈도우키+R을 눌러 명령창을 띄운 뒤 'spool'항목을 검색하고
잘못된 형식의 이미지 링크입니다.
4. 검색된 'PRINTERS' 폴더에 들어가서
잘못된 형식의 이미지 링크입니다.
5. PRINTERS 폴더 안의 파일 전체를 삭제합니다.
(앞의 2번에서 처럼 서비스를 중지하지 않으면 사용중인 파일이라면서 파일이 삭제되지 않습니다.)
잘못된 형식의 이미지 링크입니다.
6. 그리고 앞의 2번에서 중지했던 'Print Spooler' 서비스를 다시 시작해줍니다.
7. 그리고 인쇄 대기열을 다시 확인하면 깨끗하게 대기목록이 지워져 인쇄 가능상태인 것을 확인할 수 있습니다.
잘못된 형식의 이미지 링크입니다.
3줄 요약
- Print Spooler 서비스 중지
- 대기목록 파일 삭제
- Print Spooler 서비스 재시작
감사합니다.
net stop spooler
net start spooler
이렇게 작성하고 .cmd 혹은 .bat 파일로 저장해 놓고 필요할 때마다 실행시켜서 사용하면 편해요.
직접 해보니 관리자 권한으로 실행을 해야 정상작동 하네요.
그런가요..이렇게 솔루션을 찾아볼 정도까지 고생해본 적이 없어서요.
대부분은 프린터를 껐다 키면 해결되었고 정 안되면 컴퓨터를 재부팅하면 되니까요.
재부팅이 어려운 상황이라면 올려주신 팁이 도움이 되겠군요.
대박 꿀팁인데요 ㅎㅎ
감사합니다
고등학교 때부터 쳤었습니다. 지금은 일과 육아에 치여서.. ㅎㅎ
프린터설정에서 프린터 오른클릭해서 오프라인설정했다가 바로 풀어도
해결되는 경우가 있습니다.
프린터 에러 나면 꼭 사용해보겠습니다 ~_~
첨부파일 다운받으세요
대충 검색해서 나온 걸로 올립니다.
몇백 장 출력해야 하는데 안돼면 개빡침..
한편으로는
수동으로 다 가능한는걸
왜 바보같이 안되게 만들어놨을까 너무궁금하네요 ㅋㅋ
컴퓨터에서 야 하던거 멈춰 -> 프린터에서 ㅇㅋ 싸다 끊음
이 되야 하는데 답이 안오니 무한정 기다리는듯 하더군요.
스크랩해서 두고두고 봐야겠어요 ㅎㅎㅎ
지금 당장 프린터가 없어서 그 기억이 맞나 확인은 못해보네요. ^^;;
아래 항목을 복사해서 메모장에 붙여 넣으시고 파일명을 "프린트대기열제거.bat" 로 바꿔주시고 실행하시면 됩니다.
------------------------------------------------------------------------------------------------------------
@echo off
:::::::::::::::::::::::::::::::::::::::::
:: 체크 및 관리자 권한 가져 오기
NET FILE 1>NUL 2>NUL
if '%errorlevel%' == '0' ( goto gotPrivileges ) else ( goto getPrivileges )
:getPrivileges
:::::::::::::::::::::::::::::::::::::::::
:: UAC를 사용해서 관리자 권한으로 전환
if '%1'=='ELEV' (shift & goto gotPrivileges)
ECHO.
ECHO **************************************
ECHO * Use UAC, switch to admin
ECHO **************************************
setlocal DisableDelayedExpansion
set "batchPath=%~0"
setlocal EnableDelayedExpansion
ECHO Set UAC = CreateObject^("Shell.Application"^) > "%temp%\OEgetPrivileges.vbs"
ECHO UAC.ShellExecute "!batchPath!", "ELEV", "", "runas", 1 >> "%temp%\OEgetPrivileges.vbs"
"%temp%\OEgetPrivileges.vbs"
exit /B
:gotPrivileges
echo.
echo.
set /p menu=※ 원하시는 번호를 입력후 엔터키를 누르세요 :
:Menu
if /i "%menu%"=="1" goto 1
if /i "%menu%"=="2" goto exit
:1
cls
title 작업목록 자동제거 중...
echo.
echo.
echo 프린터 작업목록을 자동으로 제거 합니다.
echo.
echo.
net stop spooler
echo 프린터 작업목록을 제거 중입니다.
del %systemroot%\system32\spool\printers\*.shd
del %systemroot%\system32\spool\printers\*.spl
net start spooler
echo.
cls
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo 프린터 작업목록이 모두 삭제 됐습니다.
echo.
echo.
echo.
echo 아무키나 누르시면 종료됩니다.
pause>nul
cls
goto exit
:exit
exit
위 스크립트 윗쪽에 아래를 붙여 주시면 관리자 권한을 요청하고 실행하게 됩니다.
--------------------
:::::::::::::::::::::::::::::::::::::::::
:: 체크 및 관리자 권한 가져 오기
NET FILE 1>NUL 2>NUL
if '%errorlevel%' == '0' ( goto gotPrivileges ) else ( goto getPrivileges )
:getPrivileges
:::::::::::::::::::::::::::::::::::::::::
:: UAC를 사용해서 관리자 권한으로 전환
if '%1'=='ELEV' (shift & goto gotPrivileges)
ECHO.
ECHO **************************************
ECHO * Use UAC, switch to admin
ECHO **************************************
setlocal DisableDelayedExpansion
set "batchPath=%~0"
setlocal EnableDelayedExpansion
ECHO Set UAC = CreateObject^("Shell.Application"^) > "%temp%\OEgetPrivileges.vbs"
ECHO UAC.ShellExecute "!batchPath!", "ELEV", "", "runas", 1 >> "%temp%\OEgetPrivileges.vbs"
"%temp%\OEgetPrivileges.vbs"
exit /B
:gotPrivileges
꿀팁이 있었다니