동적으로 major number를 할당하고 device node를 생성하는 script~ #!/bin/sh module="scull" device="scull" mode="664" # 스크립트로 전달한 모든 argument를 가지고 insmod를 호출한다. /sbin/insmod -f ./$module.o $* || exit 1 # 기존에 존재하던 node를 제거한다. rm -f /dev/${device}[0-3] # /proc/devices 파일로 부터 major number를 읽어온다. major=`awk "\\$2==\*$module\" {print \\$1}" /proc/devices` # sed를 사용한 예제. # major=`sed -ne "/$module/s/ *\(.*\) *$module/..
메모리DC를 생성하고 바로 BitBlt로 hdc에서 memDC로 옮기면 옮겨지지 않습니다. 이유가 뭘까요~? MemDC는 생성직후의 크기가 1x1이기 때문이지요~ HBITMAP hBit; HDC hdc, hMemDC; WM_CREATE: hdc = GetDC(hWnd); hBit = CreateCompatibleBitmap(hdc,1024,768); hMemDC = CreateCompatibleDC(hdc); SelectObject(hMemDC, hBit); 이렇게 CreateCompatibleBitmap으로 HBITMAP을 생성해 준 후, SelectObject로 MemDC를 선택해주면 크기가 HBITMAP의 크기로 설정됩니다~ 다만 배경이 검은색으로 차기 때문에 흰색으로 채워줘야겠죠???
이제 본격적으로 eVC++을 공부해야할 때가 왔네요. 우선 eVC++를 하기 위해선 빌드 환경을 제공해야합니다. 시스템 속성에서 boot.ini 의 끝부분을 "Microsoft Windows XP Professional" /execute 로 수정해야해요. "Microsoft Windows XP Professional" 는 이미 써있으니까 /execute만 추가하면 될겁니다~ 그리고!! 컴파일 하기 전에 주의할점! 바로 이부분!! eVC에서 아무리 컴파일 해도 에뮬레이터 연결이 안되길래 뭐가 문제인가 했더니 빌드 환경을 이상한 걸로 해놓고 있었네요. loop back adapter도 깔아보고 이것 저것 다 해봐도 안됐었는데..ㅎㅎ 바로 전게 문제였다는.. 에뮬레이터로 디버그 하기 위해선 에뮬레이터 디버그를..
콘솔 프로그래밍만 하다가 win32로 넘어오면서 무수히 많은 변수선언 식별자 들을 볼 수 있는데 그 중에 몇가지를 살펴보도록 하자. LPSTR : 유니코드를 지원하지 않는 문자열이다. 한문자당 1바이트이며 콘솔에서 쓰던 char*랑 똑같다고 보면 되겠다. LPCSTR : 위의 선언식에 비해 C가 추가 되었다. const char*를 나타낸다. 역시나 1바이트 LPTSTR : LPSTR에 비해 T가 추가 되었다. 유니코드를 지원하는 string형태의 선언식이다. 한문자당 2바이트. 한글을 쓰지 않는 이상 거의 사용되지 않는다. TCHAR* 와 같은 기능 LPCTSTR : const TCHAR* 팁 - const를 붙이면 '읽기 전용'이라고 생각해주면 쉽다. LRESULT : 꽤나 자주보이는 형. long ..
내가 고등학교 1학년때 WINAPI를 처음 접했을 때, 가장 몰랐던 것이 lParam과 wParam에 관한 것이었다.(지금 생각해 보면 참 웃기다.) 둘을 왜 굳이 따로 쓰는거여!!? 일단, 도대체 여기저기서 발견 되는 wParam과 lParam은 무엇인고?? 아주 쉽게 생각해서! 기본(default)으로 지정 되어 있는 기본 인자! 라고 생각하면 된다. 우리가 MOUSE를 컨트롤 하기 위해 메세지에서 WM_LBUTTONDOWN을 받았다고 하면, 곧 사용자가 알게될 값은 무엇일까? 바로 '좌표'이다! LBUTTONDOWN 메세지를 처리하는 순간의 lParam의 상위 16비트는 x좌표를, 하위 16비트는 y좌표를 갖게 된다. 이를 구분 할려면 HIWORD(lParam)과 LOWORD(lParam)으로 구분..
- Total
- Today
- Yesterday
- 리눅스
- C
- 프로그래밍
- it
- jni
- gcc
- linux
- Visual C++
- AWS
- db
- java
- winapi
- android
- 안드로이드
- Troubleshooting
- Quiz
- MFC
- algorithm
- NDK
- kering
- source
- Cloud
- database
- C++
- driver
- API
- 음악
- jni강좌
- Python
- 드라이버
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |