원격에서 Alt+Tab 눌렀는데 내 PC 창이 바뀌던 문제
회사에서 고객사마다 환경이 달라서 Hyper-V VM이랑 RDP를 서너 개씩 켜두고 일합니다. 맥은 창 묶어서 넘기는 게 되는데 윈도우는 그런 게 없어서, RDP·VM 창을 앱 하나에 박아넣고 Alt+1~4로 넘기는 HyperDesk를 만들어서 쓰고 있어요.
처음엔 SetParent로 남의 창을 제 앱의 자식 창으로 넣었습니다. 화면상으론 잘 붙어 있었는데, 쓰다 보니 원격 안에서 Alt+Tab을 누르면 원격도 바뀌고 제 로컬 창도 같이 바뀌더라고요. Win 키도 마찬가지였고요.
원인은 자식 창이 진짜 포그라운드 창이 될 수 없다는 거였습니다. 그러다 보니 RDP 클라이언트가 키를 원격으로 보내면서 로컬에도 그대로 흘려버렸어요.
그래서 v1.4.0에서 자식 창을 포기하고, 메인 창이 소유하는 별도 최상위 창(WS_POPUP)으로 바꿨습니다. 이제 세션 창을 클릭하면 진짜 포그라운드가 돼서 RDP를 단독으로 켰을 때랑 똑같이 동작합니다. 대신 부모-자식 관계가 끊기니까 창 위치를 앱이 직접 따라다니게 만들어야 했어요. 메인 창을 옮기거나 최소화할 때 세션 창이 같이 움직이도록 다시 짰는데, 이게 생각보다 일이 컸습니다.
RDP, Hyper-V 콘솔, Horizon 세 개 다 실기기에서 키가 안 새는 거 확인했어요.
다음엔 Horizon 창이 자꾸 슬롯 밖으로 튀어나가던 거 잡은 얘기 써보겠습니다.
RDP나 VM 여러 개 띄워놓고 일하시는 분 계시면 한번 써보고 불편한 점 알려주세요. 무료고 MIT 오픈소스입니다.
GitHub: https://github.com/qetqet910/HyperDesk
스토어: https://apps.microsoft.com/detail/9NPVXL622ZQQ
여러 원격 세션(Hyper-V·RDP)을 한 앱에 임베딩하고 Alt+1~4로 전환하는 Windows 도구
댓글
로그인 후 댓글을 남길 수 있습니다.
아직 댓글이 없습니다.