티스토리 뷰
이제 본격적으로 eVC++을 공부해야할 때가 왔네요.
우선 eVC++를 하기 위해선 빌드 환경을 제공해야합니다.
시스템 속성에서 boot.ini 의 끝부분을 "Microsoft Windows XP Professional" /execute 로 수정해야해요.
"Microsoft Windows XP Professional" 는 이미 써있으니까 /execute만 추가하면 될겁니다~
그리고!! 컴파일 하기 전에 주의할점!
바로 이부분!!
eVC에서 아무리 컴파일 해도 에뮬레이터 연결이 안되길래 뭐가 문제인가 했더니 빌드 환경을 이상한 걸로 해놓고 있었네요. loop back adapter도 깔아보고 이것 저것 다 해봐도 안됐었는데..ㅎㅎ 바로 전게 문제였다는..
에뮬레이터로 디버그 하기 위해선 에뮬레이터 디버그를 선택해야합니다~
그리고~~ 마지막으로 또 주의할 점은 '유니코드!'
기존에 VC에서 컴파일 할때는 '멀티바이트 코드'로 옵션 변경해 놓으면 됐었는데 eVC서는 그게 안되니까 처음부터 유니코드를 고려하여 프로그래밍 해야합니다~~
다음 소스 코드를 한번 보도록 해요.
wsprintf( str,L"x=%d y=%d" , x, y);
// TextOut(hdc,10,10,str,strlen(str)); //evc에서 TextOut은 먹히지 않음.
DrawText(hdc,str,_tcslen(str),&rt,DT_SINGLELINE | DT_VCENTER | DT_CENTER);
지금 wsprintf의 두번째 인자에 L을 붙였는데, 이것은 유니코드로 변환해 주기위한 하나의 작업입니다.
wsprintf( str,TEXT("x=%d y=%d") , x, y); 이렇게 TEXT를 써줘도 돼요.
그리고 char를 선언할 때는 TCHAR로 하도록 합시다! 이건 유니코드일땐 유니코드로, 아닐땐 아닌걸로 자동으로 설정되도록 하는 매크로에요.
아래 DrawText를 보면 _tcslen(str)이 보이죠? 멀티바이트 코드에선 사용되지 않는 함수죠.. 멀티바이트 코드에서의 strlen이 유니코드에서는 _tcslen으로 변했답니다~ 이것 외에도 바뀐게 많으니 지금부터 하나하나 찾아봐야겠죠~???
그럼 열심히 공부합시다 ^^
'Development > Etc' 카테고리의 다른 글
URL Encoding (0) | 2010.09.12 |
---|---|
구글 코드쨈 (0) | 2010.06.04 |
[웹해킹] 패킷 전송 툴 Odysseus, Paros, Iris (2) | 2010.05.31 |
SC 명령어로 서비스(Service) 관리하자 (0) | 2010.04.27 |
인스톨러 제작, INF의 SourceDisksFiles, TaskScheduler (0) | 2010.04.23 |
[Install Shield] 인스톨/언인스톨 후 재부팅 하는 방법 혹은 재부팅 하지 않는 방법 (0) | 2010.04.22 |
[Install Shield] SysWOW64와 System32 그리고 리다이렉션 (3) | 2010.04.22 |
인스톨 쉴드 비스타 권한 문제(UAC) 해결 (0) | 2010.04.07 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- NDK
- C
- jni강좌
- gcc
- Quiz
- it
- API
- C++
- jni
- winapi
- source
- AWS
- database
- java
- Python
- Cloud
- db
- algorithm
- linux
- 드라이버
- MFC
- kering
- driver
- 프로그래밍
- 리눅스
- android
- 음악
- Troubleshooting
- Visual C++
- 안드로이드
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함