윈 도 우 설치된 기본프린터 확인 및 테스트페이지 인쇄 vbscript
2020.01.14 12:46
컴퓨터 수리업을 접은 지 5년 되어가네요.
업자분 들 필드에서 이용하실 수 있는 자료 들 틈나는 대로 올려 보겠습니다.
설치된 기본프린터 확인 및 테스트페이지 인쇄
윈도10 에서 저도 사용중입니다.
스크립트 시작
'--------------
If WScript.Arguments.length =0 Then
Set objShell = CreateObject("Shell.Application")
objShell.ShellExecute "wscript.exe", Chr(34) & _
WScript.ScriptFullName & Chr(34) & " uac", "", "runas", 1
Else
'--------------
Dim objWMIService, colProcessList, objShell, objFSO, outFile
Set objShell = WScript.CreateObject("WScript.Shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")
curDir = objfso.GetParentFolderName(WScript.ScriptFullName)
Set outFile = objFSO.CreateTextFile(curDir & "\DefPRNprint.cmd", True)
outFile.WriteLine "@echo off"
outFile.WriteLine "pushd ""%~dp0"""
outFile.WriteLine "setlocal"
outFile.WriteLine "for /f ""tokens=2*"" %%a in ('reg query ""HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows"" /v Device') do (set DefPRN1=%%b)"
outFile.WriteLine "for /f ""tokens=1 delims=,"" %%a in (""%DefPRN1%"") do set DefPRN=%%a"
outFile.WriteLine "start RUNDLL32 PRINTUI.DLL,PrintUIEntry /k /n ""%DefPRN%"""
outFile.WriteLine "endlocal"
outFile.Close
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colInstalledPrinters = objWMIService.ExecQuery _
("Select * from Win32_Printer Where Default = TRUE")
For Each objPrinter in colInstalledPrinters
x=msgbox("★ 기본 프린터 : " & objPrinter.Name & " ★" +vbCrLf+ "" +vbCrLf+ " [ 테스트 페이지를 인쇄할까요? ]", 4, "기본 프린터 확인 & 테스트 페이지 인쇄")
Next
If x = VbYes Then
objShell.Run chr(34) & curDir & "\DefPRNprint.cmd" & Chr(34), 0, True
objFSO.DeleteFile(curDir & "\DefPRNprint.cmd")
Else
objFSO.DeleteFile(curDir & "\DefPRNprint.cmd")
Wscript.Quit
End If
End If
스크립트 끝
지후아빠님이 수정해주신 깔끔버전입니다.
Dim objWMIService, colProcessList, objShell, objFSO, outFile
Set objShell = WScript.CreateObject("WScript.Shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")
curDir = objfso.GetParentFolderName(WScript.ScriptFullName)
Set outFile = objFSO.CreateTextFile(curDir & "\DefPRNprint.cmd", True)
outFile.WriteLine "@echo off"
outFile.WriteLine "pushd ""%~dp0"""
outFile.WriteLine "setlocal"
outFile.WriteLine "for /f ""tokens=2*"" %%a in ('reg query ""HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows"" /v Device') do (set DefPRN1=%%b)"
outFile.WriteLine "for /f ""tokens=1 delims=,"" %%a in (""%DefPRN1%"") do set DefPRN=%%a"
outFile.WriteLine "start RUNDLL32 PRINTUI.DLL,PrintUIEntry /k /n ""%DefPRN%"""
outFile.WriteLine "endlocal"
outFile.Close
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery("SELECT * FROM Win32_Process WHERE Name = 'UTIL.exe'")
For Each objProcess in colProcessList
objProcess.Terminate()
Next
Set colPrinters = objWMIService.ExecQuery("Select * from Win32_Printer Where Default = TRUE")
For Each objPrinter in colPrinters
x = msgbox("★ 기본 프린터 : " & objPrinter.Name & " ★" & vbCrLf & vbCrLf & _
" [ 테스트 페이지를 인쇄할까요? ]", 4, "기본 프린터 확인 & 테스트 페이지 인쇄")
If x = VbYes Then objShell.Run chr(34) & curDir & "\DefPRNprint.cmd" & Chr(34), 0, True
Next
objFSO.DeleteFile(curDir & "\DefPRNprint.cmd")
댓글 [25]
-
홍은동초짜 2020.01.14 13:51
-
易모地뗀思아之기 2020.01.14 18:02
^^... 너무나도 ..유용한 자료 입니다...
감사합니다...
-
사악환이 2020.01.14 19:44
필드에서 꼭 필요했던건데 감사합니다.
-
쵝오의날들 2020.01.14 20:51
유용한 자료를 공개해 주셔서 감사합니다.
-
notaking 2020.01.14 21:49
공부에 도움많이 되었습니다.. 감사합니다. :)
-
7850 2020.01.15 03:56
대단히 감사합니다
-
흠냐리 2020.01.15 08:40
너무너무 감사합니다 ^^
-
지룡자 2020.01.15 10:06
감사합니다 프로그램 제작에 도움이 될듯 합니다
-
win10 2020.01.15 10:24
고맙습니다
-
모들 2020.01.15 11:29
감사합니다!!!
-
이어도 2020.01.15 15:53
한방에 끝내버리는 기막힌 작품이네요 ~ 감사합니다
-
s캐니멀 2020.01.15 21:32
와 좋은자료 감사 드려요 ^^
혹시 여러대의 프린터가 있을 경우 원하는 프린터로 기본설정 후 테스트 페이지 까지 출력 하는것도 가능 한가요??
-
레마클로 2020.01.15 22:40 레지스트리에 기본 프린터로 지정 되면 당연히 출력 가능하겠죠? ^^
-
동방오타 2020.01.16 08:37
고맙습니다. ^^;
-
왕초보 2020.01.16 08:48
이제서야 보았습니다...
소중한 자료 감사합니다..
좋은일만 있으시길 바랍니다..
-
베카 2020.01.16 22:49
필요한 자료였는데 너무 감사힙니다.
-
wp3wk 2020.01.17 13:24
감사힙니다
-
하늘개구 2020.01.17 18:31
감사드립니다.
건강하세요!~
-
SYM 2020.01.17 19:53
좋은 강좌 감사드립니다.
-
슈머슈마 2020.01.20 10:21
저는 뭐가 잘못됐을까요?
-
레마클로 2020.01.23 00:48 첨부파일로 해보세요.^^
8행 - 빨간부분 수정했습니다
outFile.WriteLine "pushd ""%~dp0"""
-
쁘송 2020.01.25 19:04
매우 유용한 자료 감사합니다!
-
풍일 2020.02.12 09:26
너무 좋은자료 감사합니다
질문 하나만 드려도 될까요? 기본 프린터 정보 확인할때 기본프린터 ip정보까지 확인하는 방법은 없을까요?
-
지후빠 2020.02.16 23:17
확실한 방법인 것 같습니다. 테스트 환경이 다양하지 않아서 확인할 길이 없지만...
테스트 삼아 아래 처럼 코드를 줄여볼 수 있겠지만 모든 경우에 대응할지는 모르겠습니다. ^^
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set colPrinters = objWMIService.ExecQuery("Select * from Win32_Printer Where Default = TRUE")
For Each objPrinter in colPrinters
x = msgbox("★ 기본 프린터 : " & objPrinter.Name & " ★" & vbCrLf & vbCrLf & _
" [ 테스트 페이지를 인쇄할까요? ]", 4, "기본 프린터 확인 & 테스트 페이지 인쇄")
If x = VbYes Then objPrinter.PrintTestPage
Next
-
레마클로 2020.02.18 09:44 작동 잘 됩니다
고맙습니다..^^
번호 | 제목 | 글쓴이 | 조회 | 추천 | 등록일 |
---|---|---|---|---|---|
[공지] | 강좌 작성간 참고해주세요 | gooddew | - | - | - |
3543 | 윈 도 우| 저장공간 확인 및 정리 [16] |
|
3177 | 17 | 01-15 |
» | 윈 도 우| 설치된 기본프린터 확인 및 테스트페이지 인쇄 vbscript [25] |
|
2602 | 23 | 01-14 |
3541 | 윈 도 우| 마이크로소프트 윈도우 라이선스 정리 [7] | gooddew | 5251 | 14 | 01-11 |
3540 | 소프트웨어| SearchPreview - 웹 사이트의 미리보기 이미지 - Firefox +... | VenusGirl | 1251 | 2 | 01-06 |
3539 | 윈 도 우| PE 부팅 파티션 만들기 (legacy) [13] | gooddew | 3821 | 15 | 01-05 |
3538 | 기 타| Manjaro 리눅스 - 처음 설치 기본 가이드 [4] | VenusGirl | 3014 | 6 | 01-05 |
3537 | 소프트웨어| 배치파일 사용자 설정 파일 구현하기 [4] | 히이이잌 | 2305 | 9 | 01-01 |
3536 | 소프트웨어| 데이터 영구 삭제 [5] | gooddew | 3081 | 8 | 01-01 |
3535 | 소프트웨어| 기상 정보-Forecastfox - Firefox+Google Chrome용 부가 기능 [3] | VenusGirl | 1212 | 9 | 12-31 |
3534 | 하드웨어| BIOS, CMOS, UEFI 는 무엇인가? [15] | gooddew | 3940 | 19 | 12-31 |
3533 | 윈 도 우| [UEFI] 부팅 PE 파티션 설치하기 [19] | gooddew | 6467 | 29 | 12-28 |
3532 | 기 타| elementary OS 5.1 Hera 설치 초보자 가이드 [1] | VenusGirl | 2221 | 3 | 12-27 |
3531 | 소프트웨어| Total Commander 용 클라우드 플러그인 [5] | VenusGirl | 1816 | 11 | 12-24 |
3530 | 윈 도 우| 그림으로 보는 복원영역 만들기 [50] | 디폴트 | 5597 | 42 | 12-22 |
3529 | 모 바 일| 갤럭시s10 카메라 간단한 필수팁 [5] | ton3d | 3284 | 7 | 12-14 |
3528 | 윈 도 우| 초보자도 따라하는 전화 인증 [7] | gooddew | 6977 | 12 | 11-23 |
3527 | 윈 도 우| Windows-ISO-Downloader 짜증나는 광고제거 [6] | sTarTrak | 2272 | 13 | 11-23 |
3526 | 서버 / IT| 기업 보안 노트북에서 USB 사용하기 [9] |
|
4293 | 14 | 11-20 |
3525 | 윈 도 우| MBR2GPT 사용법 [13] | gooddew | 5070 | 16 | 11-18 |
3524 | 윈 도 우| 윈도우 시스템 에러 복구하기 [7] | gooddew | 4708 | 12 | 11-11 |
유용한 자료 넘 고맙습니다..