# windows_run.py（替换你起 iproxy 的那几行）
import os, subprocess, time, requests, wda
from pathlib import Path

UDID = "00008110-00067D0014D3B01E"
MAC = "http://192.168.1.219:8765"

# 让 Mac 起 WDA（不转发）
requests.post(f"{MAC}/startWDA", json={"udid": UDID}, timeout=600).raise_for_status()

# 计算 iproxy 绝对路径（项目根/resources/iproxy/iproxy.exe）
BASE = Path(__file__).resolve().parents[1]  # iOSAI/
IPROXY = BASE / "resources" / "iproxy" / "iproxy.exe"
if not IPROXY.exists():
    raise FileNotFoundError(f"iproxy 不在这里: {IPROXY}")

# 可选：把 iproxy 目录加入 PATH，避免 DLL 依赖找不到
env = os.environ.copy()
env["PATH"] = str(IPROXY.parent) + os.pathsep + env.get("PATH", "")
try:
    os.add_dll_directory(str(IPROXY.parent))  # 仅 Windows 有效
except Exception:
    pass

# 起 iproxy：本地 9111 -> 设备 8100
p = subprocess.Popen([str(IPROXY), "-u", UDID, "9111", "8100"],
                     cwd=str(IPROXY.parent),
                     stdout=subprocess.PIPE, stderr=subprocess.STDOUT,
                     text=True, creationflags=0x08000000)

# 探活 WDA
c = wda.Client("http://127.0.0.1:9111")

for _ in range(120):
    try:
        print(c.status()); break
    except:
        time.sleep(1)
