https://www.tenforums.com/tutorials/66152-add-remove-microsoft-xps-document-writer-printer-windows-10-a.html 일반적인 제거 방법 전 이게 안되네요 ㅠ.
https://cafe.daum.net/candan/GGFN/469 이전글
https://youtu.be/8LqyIP-iB2A 영상 설명 ㅎㅎb
https://cafe.daum.net/candan/GGFN/518 이거 보다 높은 버전
REM cmd 관리자 권한으로 실행
pnputil /enum-devices /drivers > d:\install_drivers.txt
# 파워쉘 관리자 권한으로 실행
Get-Content d:\install_drivers.txt -Encoding Default | Out-File -Encoding UTF8 d:\777.txt
자신이 찾으려는 단어 찾으면 되내요
notepad d:\777.txt
REM 777.txt 문서는 반드시 UTF-8(ROM)로 되어 있어야 해요
# 1. 첫번째 단어 찾기 https://cafe.daum.net/candan/GGFN/466
# 777.txt 출력물에서 'SM 버스 컨트롤러' 단어를 찾고 위로 올라 가서 '인스턴스' 문장을 찾아서 출력 하세요
# https://cafe.daum.net/candan/GGFN/466 참조 하세요
아래 내용 4개 모두 제거 했다.
$lines = Get-Content d:\777.txt
$index = -1
foreach($line in $lines) {
if($line.Contains("SM 버스 컨트롤러")) {
$index = $lines.IndexOf($line) - 1
break
}
}
# 1. 두번째 단어 찾기
$lines = Get-Content d:\777.txt
$index222 = -1
foreach($line in $lines) {
if($line.Contains("Microsoft Print to PDF")) {
$index222 = $lines.IndexOf($line) - 1
break
}
}
#
#
# 2. 위의 문장에서 A에 해당 하는 부분을 찾아서 출력 하기
for ($i = $index; $i -ge 0; $i--) {
if ($lines[$i] -match "^인스턴스") {
$result = $lines[$i]
break
}
}
$result | Out-File -Encoding UTF8 d:\888.txt
# 2. 두번째 출력 하기
for ($i = $index222; $i -ge 0; $i--) {
if ($lines[$i] -match "^인스턴스") {
$result = $lines[$i]
break
}
}
$result | Out-File -Encoding UTF8 d:\888222.txt
# 3. 합치기
type d:\888.txt > d:\5555.txt
type d:\888222.txt >> d:\5555.txt
Get-Content d:\5555.txt -Encoding Default | Out-File -Encoding UTF8 d:\6666.txt
# 4. 공백 제거 인스턴스 문장을 제거 하고 ID만 가지고와서 출력 하기
# https://cafe.daum.net/candan/GGFN/467 참조 하세요
Get-Content -Path "d:\6666.txt" |
ForEach-Object {
if($_ -match '^인스턴스.*:.*\s+(.*)$') {
Write-Output $Matches[1]
}
} | Out-File -FilePath "d:\999.txt" -Encoding UTF8
# 출력된 내용을 인코딩 해서 한글 깨짐을 해결 하기
Get-Content d:\999.txt -Encoding Default | Out-File -Encoding OEM d:\444.txt
REM 최종 목표 입니다
REM https://cafe.daum.net/candan/GGFN/464
REM pnputil /remove-device "SWD\PRINTENUM\{403EA90E-6BDA-4EB4-9BB4-BC40E5920519}" 기본 베이스
REM
for /f "delims=" %i in ('type d:\444.txt') do set "aa=%i" & cmd /V:ON /C "echo !aa!"
REM 이제 최종 목표 실행 하기
for /f "delims=" %i in ('type d:\444.txt') do set "aa=%i" & cmd /V:ON /C "pnputil /remove-device !aa!"
인스턴스 ID: SWD\PRINTENUM\{??}
Fax
인스턴스 ID: SWD\PRINTENUM\{??}
장치 설명: Microsoft Print to PDF
인스턴스 ID: SWD\PRINTENUM\{??}
장치 설명: Microsoft XPS Document Writer
인스턴스 ID: SWD\PRINTENUM\{??}
장치 설명: OneNote
이렇게 많내요 ㅎㅎ 이걸 제거 해야 하는 거죠