끄적끄적

[배치파일] Win10 원클릭으로 기본 프린터 설정 바꾸기

재삐 2023. 8. 6. 19:28
반응형

Win7에서 Win10으로 바뀌면서

프린터 제어하는 화면이 불편하게 바뀌었습니다.

그래서 저는

▲ Win10에서 윈도우키+R을 눌려 실행창 화면을 띄운 모습

실행창(Win+R) -> control printers

'장치 및 프린터' 에서 제어를 하는 편인데요

기본 프린터를 바꾸기 위해서

장치 및 프린터 화면에 들어가서 해당 프린터 마우스 우클릭 -> 기본 프린터로 지정을 해야하는데

배치파일로 한번의 클릭으로 바꿀 수 있게 만들어 보았습니다.

▲ 작업 표시줄에 아이콘 클릭시 기본프린터 변경되는 모습

 

메모장을 열어 해당 코드를 적으시고

저장 혹은 다른 이름으로 저장할 때 파일확장자를 배치 파일이나 파워쉘 파일에 맞게 저장

배치 파일 파워쉘 파일
.bat .ps1

▶ 배치파일로만 변경 

wmic printer where "Name='<PrinterName>'" call setdefaultprinter

<PrinterName>에 기본 프린터로 변경되고자 하는 프린터 이름을 넣고

원하는 파일명.bat으로 저장 후 .bat 파일 실행

문제점 : USB로 공유된 프린터는 변경이 안됨

▲ 저는 메모장에 이렇게 적고 '파일명.bat'으로 저장

 

▶ 배치파일 + 파워쉘

$printerName = "<PrinterName>"
$printer = Get-WmiObject -Query "SELECT * FROM Win32_Printer WHERE Name = '$printerName'"
$printer.SetDefaultPrinter()

<PrinterName>에 기본 프린터로 변경되고자 하는 프린터 이름을 넣고

원하는 파워쉘파일명.ps1으로 저장

PowerShell.exe -ExecutionPolicy Bypass -File "파워쉘파일명.ps1"

원하는 파일명.bat으로 저장 후 .bat 파일 실행

문제점 : USB로 공유된 프린터는 변경이 안됨

 

▶ 배치파일 + 파워쉘 (공유된 프린터도 변경 되는 방법)

(New-Object -ComObject WScript.Network).SetDefaultPrinter('\\Hostname\printername')

Hostname에 공유 받은 Hostname, printername에 프린터 이름 넣고

원하는 파워쉘파일명.ps1으로 저장

PowerShell.exe -ExecutionPolicy Bypass -File "파워쉘파일명.ps1"

원하는 파일명.bat으로 저장 후 .bat 파일 실행

 

 

 

참고 사이트 : https://learn.microsoft.com/ko-kr/powershell/scripting/samples/working-with-printers?view=powershell-7.3

 

 

Copyright ⓒ. JaePPy All rights reserved.

usopp1004@naver.com

 

반응형