듀얼 모니터를 사용하면서, 최근에 모니터를 바꾸어 DP 포트에 연결하였습니다.
자리를 비우면 화면 보호기 > 모니터 끄기 이렇게 동작하도록 보통 설정하는데요
잠근 화면을 풀고 모니터가 켜지면 모든 윈도우가 주 모니터로 다 모여 있네요.
DP 포트의 버전과 케이블 특성을 탄다고 되어있는데, 결론적으로 DP 포트로 연결된 모니터는 전원옵션에서 자동으로 꺼지면 하드웨어가 없어진 상태로 감지되고, 절전에서 깨어날 때 다시 모니터가 연결되는 그런 문제라고 하네요.
(그렇다고 모니터를 끄기를 없애면 계속 켜져있어서 문제 ... DP 포트 안쓰면 자동 해결)
그 과정에서 모니터가 없어졌다가 나타나니 윈도우가 한 모니터에 몽땅 뭉처져서 보여지네요.
1. 평상시 듀얼 모니터 상태
2. 모니터가 절전모드에서 DP 포트에 연결된 놈이 꺼지는 상태 (이 때 화면에 한 모니터로 다 몰림)
3. 절전 모드에서 잠금 풀었을 때 화면
이 문제는 하드웨어적인 특성을 가지고 있다고 하는데, S/W 개발자다 보니 S/W 적인 방법으로 풀어 보았습니다.
4. 화면이 잠금 될 때 모든 모니터의 윈도우 정보를 몽땅 저장한다.
5. 잠금 해제되어 모니터가 모두 연결 되었을 때, 저장된 윈도우 정보를 복원하여 원래 대로 위치 시킨다.
그러면 3번의 화면이 아래 그림처럼 바뀌어 원하는 결과를 얻을 수 있습니다.
6. 작성된 첨부 프로그램 (윈도우 서비스 레이어에서 구동되는 서비스 프로그램)
해당 프로그램은 윈도우 서비스로 구동되는 데몬 같은 프로그램입니다.
7. C 루트에 파일 압축을 풀어 놓습니다.
(원하는 어떠한 경로에 복사해 두어도 됩니다. 설명을 위하여 C 에 복사함)
8. CMD 창을 관리자 모드로 열고 C:\ 로 이동합니다.
9. 서비스 인스톨 명령을 실행합니다.
C:\>DesktopPositionSrv.exe i 를 입력하고 엔터
10. 서비스 실행 명령을 실행합니다.
C:\>DesktopPositionSrv.exe s 를 입력하고 엔터
11. 서비스를 중지할 때는 C:\>DesktopPositionSrv.exe t
12. 서비스를 제거할 때는 C:\>DesktopPositionSrv.exe u
13. 프로그램이 정상적으로 구동되면 아래 처럼 작업 관리자 및 서비스 관리자에 보여집니다.
14. 이제 모니터가 절전 모드에 들어갔다 나와도, 잠금을 해제하면 원래 위치로 가있는 화면을 보실 수 있습니다.
15. 윈도우 서비스 프로그램이기 때문에 컴퓨터가 꺼졌다 켜저도 자동으로 동작합니다.
(모니터 잠금(백업) 및 잠금해제(복원)시에만 동작하며 접속 터미널이 콘솔일 경우만 반응합니다.)