Dev Log #017 — VST 설치 삽질 이력: UAC Hell + Playwright MCP 자폭

날짜: 2026-03-25

레포: parksy-audio

작업자: 박씨 + Claude Code (WSL2)


한 줄 요약

WSL에서 Windows VST 인스톨러를 자동 설치하려다 UAC에 막혀 4시간 삽질.

Playwright MCP까지 실수로 죽여서 브라우저 자동화도 멈춤.

결론: UAC Secure Desktop은 어떤 자동화도 뚫지 못한다. 직접 클릭이 유일한 해법.


시도한 방법들과 전부 왜 안 됐는지

1. PowerShell `Start-Process -Verb RunAs`

Start-Process 'C:\Temp\pianoteq_trial_v912.exe' -Verb RunAs

결과: The operation was canceled by the user.

이유: WSL 프로세스는 Windows 인터랙티브 데스크탑 세션이 없어서 UAC Secure Desktop에 접근 불가. 창이 뜨지도 않음.


2. NSIS `/S` 사일런트 설치

Start-Process 'installer.exe' -ArgumentList '/S' -Wait

결과: The requested operation requires elevation.

이유: 인스톨러 PE 헤더에 requireAdministrator manifest가 박혀 있음. /S 플래그는 설치 경로를 조용히 할 뿐, 권한 요구 자체를 없애지 않음.


3. NSIS per-user 경로 지정 (`/D=AppData`)

Start-Process 'installer.exe' -ArgumentList '/S /D=C:\Users\dtsli\AppData\Local\Pianoteq9' -Wait

결과: 0MB WAV, 설치 안 됨

이유: VST 인스톨러들은 per-user path를 받아도 내부적으로 Program Files 또는 VST3 공용 경로 (C:\Program Files\Common Files\VST3\) 에 파일을 쓰려 해서 admin 필요.


4. 7z로 NSIS 페이로드 추출 시도

7z e pianoteq_trial_v912.exe

결과: 아이콘/리소스 파일만 추출됨. 실제 설치 파일 없음.

이유: NSIS 압축 포맷([0] 스트림)은 표준 아카이브가 아님. NSIS 전용 언패커 없이는 추출 불가.


5. VBScript Shell.Application `runas`

Set objShell = CreateObject("Shell.Application")
objShell.ShellExecute "installer.exe", "", "", "runas", 1

결과: VBS 실행은 됐지만 UAC 창이 화면에 안 뜸

이유: WSL에서 wscript.exe 실행 시 Windows 사용자 세션의 인터랙티브 데스크탑에 접근 못함. Secure Desktop에 UAC 창은 떴을 수 있으나 자동화 불가.


6. Windows Task Scheduler `RunLevel Highest`

$principal = New-ScheduledTaskPrincipal -RunLevel Highest
Register-ScheduledTask ...

결과: Access is denied. (0x80070005)

이유: RunLevel Highest 태스크 등록 자체가 관리자 권한 필요. WSL 일반 유저로는 불가.


7. win-gui MCP (pyautogui) 시도

결과: MCP 이 세션에서 연결 안 됨 (tools 목록에 없음)

이유: 세션 시작 시 MCP 서버 연결 실패. 설정파일(~/.claude/settings.json)에는 있지만 Claude Code 세션 초기화 단계에서 응답 없으면 비활성화됨.

추가 문제: win-gui가 연결되어도 UAC Secure Desktop은 별도 윈도우 스테이션이라 pyautogui 좌표 클릭이 물리적으로 불가. Windows 보안 설계.


8. Playwright MCP로 다운로드 시도 (Pianoteq CDN)