일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
- 우분투
- DevOps
- QT
- 패키지
- ubuntu
- RUBY
- VMware
- Linux
- port
- Openswan
- 리눅스
- window size
- 방화벽체크
- driver
- docker-compose
- docker
- sudo
- docker registry
- docker container
- 도커
- golang
- 루비
- Chef
- 드라이버
- ssh command
- ssh
- AWS
- VPN
- VIM
- opsworks
- Today
- Total
목록Programming (13)
구리의 창고
응용 프로그램이 다중 모니터 환경을 직접 다루거나 다중 모니터로 인한 문제점을 해결하려면 먼저 시스템에 장착된 모니터에 대한 정보를 조사해야 한다. 다음 함수는 시스템의 모든 모니터 또는 특정 DC와 관련된 모니터를 열거한다. BOOL EnumDisplayMonitors(HDC hdc, LPCRECT lprcClip, MONITORENUMPROC lpfnEnum, LPARAM dwData); hdc와 lprcClip 인수에 대해서는 잠시 후 따로 정리해 보기로 하되 이 값이 둘 다 NULL이면 모든 모니터가 열거된다. lpfnEnum 인수는 모니터가 발견될 때마다 호출될 콜백 함수이며 dwData는 이 함수로 전달될 사용자 정의값이다. 콜백 함수는 다음과 같은 원형을 가진다. BOOL CALLBACK M..
SetCursorPos()를 사용해서 마우스 위치를 지정 할 수 있다. 하지만, 클릭이나 드래그 같은 기능은 구현 할 수 없다. 그래서 SendInput()이란 함수를 이용하면 된다. 헤더파일은 windows.h 이다. 아래는 마우스 왼쪽버튼을 클릭 한 후, 다시 복구시키는 소스이다. INPUT an_input; an_input.type = INPUT_MOUSE; an_input.mi.dx = 0; an_input.mi.dy = 0; an_input.mi.mouseData = 0; an_input.mi.dwFlags = MOUSEEVENTF_LEFTDOWN; an_input.mi.time = 0; an_input.mi.dwExtraInfo = 0; SendInput(1, &an_input, sizeof ..
콘솔모드로 간단히 어플을 테스트하다가 타이머를 사용 할 일이 생겼다. StartTimer란 기본적으로 WinAPI에서 제공하는 함수이므로 스레드를 사용해야한다. 스레드 함수 원형은 아래와같다 uintptr_t _beginthread( void( *start_address )( void * ), unsigned stack_size, void *arglist ); uintptr_t _beginthreadex( void *security, unsigned stack_size, unsigned ( *start_address )( void * ), void *arglist, unsigned initflag, unsigned *thrdaddr ); 간단한 사용방법은 아래와 같다 _beginthread(Handler..