티스토리 뷰
반응형
WIN32 API를 이용하여 터미널 환경 체크하기
WIN32 API인 GetsystemMetrics()를 이용하여 터미널 환경임을 체크해 봅시다.
https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-getsystemmetrics
CODE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
bool GetTerminalServiceClientStatus()
{
bool bResult = false;
if(0 == ::GetSystemMetrics(SM_REMOTESESSION))
{
bResult = false;
}
else
{
bResult = true;
}
return success;
}
int main(int argc, CHAR* argv[])
{
while(true)
{
printf("Detect Remote DeskTop %d\r\n",GetTerminalServiceClientStatus());
Sleep(1000);
}
return 0;
}
|
cs |
총평
::GetSystemMetrics() 함수를 이용하여 REMOTESESSION에서 현재 프로그램이 실행 중인지 여부를 판단 할 수 있습니다.
"가상환경"로 검출이 가능하지만 가상화 솔루션의 제작 방식에 따라서 다르게 동작 할 수 있습니다.
728x90
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 윈도우
- PowerShell
- 리눅스
- OpenSource
- 서귀포블루버블
- DLL
- C++
- 울릉도
- 외돌개
- Thread
- C#
- C#.NET
- 패턴
- 스쿠버다이빙
- Linux
- CMake
- C# 고급 기술
- C
- 제주도
- 서귀포
- 현포다이브
- Windows
- ip
- 성산블루버블
- 스쿠버 다이빙
- 블루버블다이브팀
- 블루버블
- Build
- 블루버블다이빙팀
- 암호화
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함
반응형