메인 항목으로

모니터 관련 서비스

 본 서비스는 eXDevice+가 설치된 PC에 연결된 모니터의 정보 획득을 지원합니다.

서비스 리스트

 모니터 관련 서비스 리스트는 다음과 같습니다.

No. 서비스명 API명 비고
1 연결된 모니터 개수 획득 WinInfo.GetConnectedScreenNumber
2 주 모니터 식별 WinInfo.PrimaryScreen
3 전체 모니터 식별 WinInfo.GetAllScreens
4 주 모니터 해상도 획득 WinInfo.GetPrimaryResolution
5 지정 모니터 해상도 획득 WinInfo.GetSpecialScreenResolution
6 전체 모니터 해상도 획득 WinInfo.GetAllScreenResolutions

서비스 상태 코드 리스트

 본 서비스에서 공통으로 사용되는 서비스 상태코드 리스트에 대해 정의합니다.

 이 상태 코드는 응답 JSON 메시지 중 return 또는 returnValue의 값에 해당합니다.

리턴코드 리턴 코드 내용 대상 서비스 비고
-1 정의되지 않은 예외 공통 Log 파일에서 내용 확인 필요
0 정상 공통 -
2 PC와 연결된 모니터 리스트 획득 실패

GetConnectedScreenNumber,

GetAllScreens

-
3 요청 모니터 정보 획득 실패

PrimaryScreen,

GetPrimaryResolution


4 모니터 해상도 획득 실패 GetPrimaryResolution

1. 연결된 모니터 개수 획득

API명

  • WinInfo.GetConnectedScreenNumber

정의

  • PC에 물리적으로 연결된 모든 모니터의 개수를 획득합니다.

호출 예시

{
  "service":"WinInfo.GetConnectedScreenNumber",
  "requestKey":"Random Request Key",
  "param":{}
}

응답 예시

{
  "service":"WinInfo.GetConnectedScreenNumber",
  "requestKey":"호출시 사용한 Request Key",
  "statusCode":"0000",
  "return":{
    "returnValue":0,
    "screenNumber":3
  }
}
  • returnValue
    • 서비스 상태 코드.
  • screenNumber
    • 연결된 모니터 개수.

2. 주 모니터 식별

API명

  • WinInfo.PrimaryScreen

정의

  • PC에 물리적으로 연결 된 모니터 중 주 모니터로 설정된 모니터의 시스템 식별 이름을 획득합니다.

설명

  • 시스템은 모니터를 식별할 때 그래픽 카드 슬롯에 연결된 모니터를 인식하며, 그래픽 카드 슬롯의 위치에 따라 "DISPLAY + 숫자"형식의 이름으로 모니터를 식별합니다.
  • DISPLAY 뒤에 붙는 숫자는 PC의 메인보드, 그래픽카드의 정책에 따라 상이합니다.

모니터 이름은 시스템이 해당 모니터를 식별하기 위해 임의로 발급한 이름입니다. 즉, 본 서비스를 통해 획득하는 모니터의 이름은 제조사, 모델명과 무관한 이름입니다.

호출 예시

{
  "service":"WinInfo.GetPrimaryScreen",
  "requestKey":"Random Request Key",
  "param":{}
}

응답 예시

{
  "service":"WinInfo.GetPrimaryScreen",
  "requestKey":"호출시 사용한 Request Key",
  "statusCode":"0000",
  "return":{
    "returnValue":0,
    "primaryScreen":"DISPLAY5"
  }
}
  • returnValue
    • 서비스 상태 코드.
  • primaryScreen
    • 주 모니터 시스템 식별 이름.

3. 전체 모니터 식별

API명

  • WinInfo.GetAllScreens

정의

  • PC에 연결된 모든 모니터의 시스템 식별 이름을 획득합니다.

설명

  • 시스템은 모니터를 식별할 때 그래픽 카드 슬롯에 연결된 모니터를 인식하며, 그래픽 카드 슬롯의 위치에 따라 "DISPLAY + 숫자"형식의 이름으로 모니터를 식별합니다.
  • DISPLAY 뒤에 붙는 숫자는 PC의 메인보드, 그래픽카드의 정책에 따라 상이합니다.

모니터 이름은 시스템이 해당 모니터를 식별하기 위해 임의로 발급한 이름입니다. 즉, 본 서비스를 통해 획득하는 모니터의 이름은 제조사, 모델명과 무관한 이름입니다.

호출 예시

{
  "service":"WinInfo.GetAllScreens",
  "requestKey":"Random Request Key",
  "param":{}
}

응답 예시

{
  "service":"WinInfo.GetAllScreens",
  "requestKey":"호출시 사용한 Request Key",
  "statusCode":"0000",
  "return":{
    "returnValue":0,
    "screenInfos":{
      "Screen0":"DISPLAY1",
      "Screen1":"DISPLAY5",
      "Screen2":"DISPLAY4"
    }
  }
}
  • returnValue
    • 서비스 상태 코드.
  • screenInfos: 연결된 모든 모니터 식별 이름.
    • Screen + 숫자
      • eXDevice+에서 Screen을 구분 짓기 위한 Key.
    • DISPLAY + 숫자
      • 시스템이 모니터를 식별하기 위한 이름.

4. 주 모니터 해상도 획득

API명

  • WinInfo.GetPrimaryResolution

정의

  • PC에 연결된 모니터 중 주 모니터의 좌측 상단 시작 좌표 (left, top) 및 모니터의 해상도(width, height)를 획득합니다.

설명

  • 시스템은 모니터의 좌표 및 해상도를 다음과 같이 식별합니다.

K-017.png

<Windows 모니터 해상도 식별 방식>

호출 예시

{
  "service": "WinInfo.GetPrimaryResolution",
  "requestKey":"Random Request Key",
  "param":{}
}

응답 예시

{
  "service":"WinInfo.GetPrimaryResolution",
  "requestKey":"호출시 사용한 Request Key",
  "statusCode":"0000",
  "return":{
    "returnValue":0,
    "screenResolution":{
      "width":1920,
      "height":1080,
      "left":0,
      "top":0
    }
  }
}
  • returnValue
    • 서비스 상태 코드.
  • screenResuolution: 대상 모니터 좌표 및 해상도 정보.
    • width
      • 모니터 가로 길이.
    • height
      • 모니터 세로 길이.
    • left
      • 모니터 좌측 시작 좌표.
    • top
      • 모니터 상단 시작 좌표.

5. 지정 모니터 해상도 획득

API명

  • WinInfo.GetSpecialScreenResolution

정의

  • PC에 연결된 모니터 중 사용자가 지정한 모니터의 좌측 상단 시작 좌표 (left, top) 및 모니터의 해상도(width, height)를 획득합니다.

설명

  • 시스템은 모니터 좌표 식별 시 주 모니터를 기준으로 다른 모니터들의 좌표를 식별합니다.
  • 즉, 주 모니터의 left, top은 항상 0, 0이며, 보조 모니터들은 주 모니터의 좌표를 기준으로 left, top의 좌표가 식별 됩니다.

image.png<해상도가 동일한 주 모니터, 보조 모니터 좌표 예시>

호출 예시

{
  "service": "WinInfo.GetSpecialScreenResolution",
  "requestKey": "Random Request Key",
  "param": { 
    "screenIndex": 1
  }
}
  • screenIndex
    • 좌표 및 해상도 정보를 획득할 모니터의 인덱스.
    • 시스템이 인식하는 모니터 명칭에서 숫자 값. (예: DISPLAY4 → 4)

응답 예시

{
  "service":"WinInfo.GetSpecialScreenResolution",
  "requestKey":"호출시 사용한 Request Key",
  "statusCode":"0000",
  "return":{
    "returnValue":0,
    "screenResolution":{
      "width":1920,
      "height":1080,
      "left":-1920,
      "top":0
    }
  }
}

  • returnValue
    • 서비스 상태 코드.
  • screenResolution: 모니터 좌표 및 해상도.
    • width
      • 모니터 가로 길이.
    • height
      • 모니터 세로 길이.
    • left
      • 모니터 좌측 시작 좌표.
      • 주 모니터 외 모니터는 주 모니터 기준 좌표.
    • top
      • 모니터 상당 시작 좌표.
      • 주 모니터 외 모니터는 주 모니터 기준 좌표.

6. 전체 모니터 해상도 획득

API명

  • WinInfo.GetAllScreenResolutions

정의

  • PC에 연결된 모든 모니터의 좌측 상단 시작 좌표 (left, top) 및 모니터의 해상도(width, height)를 획득합니다.

설명

  • 시스템은 모니터 좌표 식별 시 주 모니터를 기준으로 다른 모니터들의 좌표를 식별합니다.
  • 즉, 주 모니터의 left, top은 항상 0, 0이며, 보조 모니터들은 주 모니터의 좌표를 기준으로 left, top의 좌표가 식별 됩니다.

image.png<해상도가 동일한 주 모니터, 보조 모니터 좌표 예시>

호출 예시

{
  "service":"WinInfo.GetAllScreenResolutions",
  "requestKey":"Random Request Key",
  "param":{}
}

응답 예시

{
  "service":"WinInfo.GetAllScreenResolutions",
  "requestKey":"f3a5-4de9-8fbb",
  "statusCode":"0000",
  "return":{
    "returnValue":0,
    "screenResolution":[
      {"name":"DISPLAY1","width":1920,"height":1080,"left":-1920,"top":0},
      {"name":"DISPLAY5","width":1920,"height":1080,"left":0,"top":0},
      {"name":"DISPLAY4","width":1080,"height":1920,"left":1920,"top":-543}
    ]
  }
}
  • returnValue
    • 서비스 상태 코드.
  • screenResolution: PC에 연결된 모니터 시스템 이름, 좌표 및 해상도 정보 배열.
    • name
      • 시스템이 식별한 모니터 이름. 
    • width
      • 모니터 가로 길이.
    • height
      • 모니터 세로 길이.
    • left
      • 모니터 좌측 시작 좌표.
      • 주 모니터 외 모니터는 주 모니터 기준 좌표.
    • top
      • 모니터 상당 시작 좌표.
      • 주 모니터 외 모니터는 주 모니터 기준 좌표.