Files
juc500/dist-offline/juc500-offline-update-20260720-143500/docs/OFFLINE-WINDOWS.md
T
2026-07-21 21:11:19 +09:00

82 lines
2.2 KiB
Markdown

# 폐쇄망 Windows 11 — 오프라인 빌드/실행
이 저장소의 `vendor/` 에는 **인터넷 없이** 설치·실행할 수 있는 파일이 포함되어 있습니다.
## 포함 내용
- `vendor/wheels/*.whl` — pyusb, pynput, setuptools, pip, virtualenv 등
- `vendor/libusb-1.0.dll` — libusb x64
- `vendor/python-windows/` — Python 3.11.9 embeddable (시스템 Python 불필요)
- `vendor/get-pip.py` — 오프라인 pip 설치
- `vendor/tools/zadig.exe` — WinUSB 바인딩 (폐쇄망용, 오프라인)
## 지원 케이블 (앱 인식)
| 모델 | USB ID | 비고 |
|------|--------|------|
| JUC500 | `0711:7500` | IF5 |
| JUC700 | `0711:700x` | Mac IF0 / Win IF5·IF0 |
| **SmartKMLink** | `0ea0:7301` | JUC500과 동일 IF5 |
## 대상 PC에서 **신규** 설치
1. 소스 트리 전체를 USB 등으로 복사 (특히 `vendor/` 누락 금지)
- Mac에서 전체 zip: `./scripts/make_windows_bundle.sh` (`.venv` 제외, `vendor/` 포함)
2. Git Bash (권장):
```bash
cd /c/dev/juc500
./start_win.sh
```
첫 실행 시 `vendor/` 로 `.venv`·`libusb` 가 **자동 생성**됩니다.
또는 CMD:
```bat
cd c:\dev\juc500
scripts\setup_windows.bat
.\start.bat
```
## 이미 설치된 PC에 **소스 업데이트만** (폐쇄망)
Mac에서:
```bash
./scripts/make_offline_windows_update.sh
```
생성물:
- `dist-offline/juc500-offline-update-*.zip`
- 바탕화면 동일 zip
- `vendor/tools/zadig.exe`, `vendor/wheels`, `juc500_xfer/*`, `apply_offline_update.bat` 포함
Windows에서:
1. zip을 USB로 복사·압축 해제
2. JUC500 GUI 종료
3. `apply_offline_update.bat` 실행 (기본 `C:\dev\juc500`)
4. `start.bat` 재실행 → 상단 빌드 태그가 `BUILD.txt`의 `XFER_BUILD`와 일치하는지 확인
인터넷·PyPI 불필요.
## USB / WinUSB
장치 Interface 5 는 **Zadig → WinUSB** 가 필요합니다.
```
vendor\tools\zadig.exe
```
Options → List All Devices → `SmartKMLink` 또는 `Smart Data Link` → **Interface 5 (MI_05)** → WinUSB.
## 온라인 PC에서 vendor 갱신
```bat
python -m pip download -d vendor\wheels ^
pyusb==1.2.1 pynput==1.8.2 six==1.17.0 ^
"setuptools>=68" wheel packaging pip build virtualenv
```