모니터 관련 서비스
본 서비스는 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 + 숫자
- 시스템이 모니터를 식별하기 위한 이름.
- Screen + 숫자
4. 주 모니터 해상도 획득
API명
- WinInfo.GetPrimaryResolution
정의
- PC에 연결된 모니터 중 주 모니터의 좌측 상단 시작 좌표 (left, top) 및 모니터의 해상도(width, height)를 획득합니다.
설명
- 시스템은 모니터의 좌표 및 해상도를 다음과 같이 식별합니다.
<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
- 모니터 상단 시작 좌표.
- width
5. 지정 모니터 해상도 획득
API명
- WinInfo.GetSpecialScreenResolution
정의
- PC에 연결된 모니터 중 사용자가 지정한 모니터의 좌측 상단 시작 좌표 (left, top) 및 모니터의 해상도(width, height)를 획득합니다.
설명
- 시스템은 모니터 좌표 식별 시 주 모니터를 기준으로 다른 모니터들의 좌표를 식별합니다.
- 즉, 주 모니터의 left, top은 항상 0, 0이며, 보조 모니터들은 주 모니터의 좌표를 기준으로 left, top의 좌표가 식별 됩니다.
<해상도가 동일한 주 모니터, 보조 모니터 좌표 예시>
호출 예시
{
"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
- 모니터 상당 시작 좌표.
- 주 모니터 외 모니터는 주 모니터 기준 좌표.
- width
6. 전체 모니터 해상도 획득
API명
- WinInfo.GetAllScreenResolutions
정의
- PC에 연결된 모든 모니터의 좌측 상단 시작 좌표 (left, top) 및 모니터의 해상도(width, height)를 획득합니다.
설명
- 시스템은 모니터 좌표 식별 시 주 모니터를 기준으로 다른 모니터들의 좌표를 식별합니다.
- 즉, 주 모니터의 left, top은 항상 0, 0이며, 보조 모니터들은 주 모니터의 좌표를 기준으로 left, top의 좌표가 식별 됩니다.
<해상도가 동일한 주 모니터, 보조 모니터 좌표 예시>
호출 예시
{
"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
- 모니터 상당 시작 좌표.
- 주 모니터 외 모니터는 주 모니터 기준 좌표.
- name