본문 바로가기

문자열 이야기(작성중) 문자열 이야기 작성자: Ospace(ospace114@empal.com) History 080109 ospace 최초작성 제가 Windows 환경에서 개발하면서 가장 골치아픈 자료형이 문자열이다. 다른 자료형은 정수형과 실수형이고 값의 범위 정도만 알면 충분하다. 같은 형태 자료형이면 공통된 범위에 속한 값이면 쉽게 변환이 가능하고 사용할 수 있다. 그러나 문자열은 다르다. 물론 문자열 자체가 기본 자료형이 아니기 때문에 더욱더 그렇다고 볼 수 있다. 먼저 문자열 자료형의 종류를 살펴보고, 이들간의 변환을 살펴보겠다. 대부분의 내용는 MSDN를 참고했으며, 그외에 나름대로 시행착오로 만들어졌다. 그 다음으로 문자열간의 변환 방법을 알아보겠다. 마지막으로 문자열 관련 팁을 몇가지 넣도록 하겠다. 문자열 자.. 더보기
MSN 메신저에서 채팅 절차 이글은 http://www.tlsecurity.net/Textware/Misc/draft-movva-msn-messenger-protocol-00.txt의 내용을 간단하게 번역한 내용입니다. 역자: Ospace(ospace114@empal.com) 일자: 2007.12.05 MSN메신저에서 인스탄스 메시징은 세션기반으로 작동합니다. 대화를 하려는 사람들은 세션을 생성해야 대화를 할 수 있다. 우리는 채팅하려는 사용자와 채팅 세션을 시작하기 전까지는 메시지를 송수신할 수 없다. 이를 위한 기본적인 두가지 메소드는 다음과 같다. -. 사용자는 다른 사용자에게 채팅 세션 요청을 보낸다. -. 사용자는 다른 사용자로 부터 채팅 세션 요청을 받는다. 사용자는 채팅세션을 요청을 송신 사용자는 서버에게 SwitchB.. 더보기
윈도우 애플리케이션 제어 아래는 C#을 이용해서 윈도우 애플리케이션(메신저)을 제어하는 예제코드이다. 재미있기때문에 한번해보길 바란다. 잘만하면 다양한 응용방법이 나올 수 있다. 대충적인 그림은 윈도우 애플리케이션(이하 메신저로 간주)를 다른 프로그램에서 임의의 버튼을 클릭하거나 마우스 조작을 하거나 특정 입력이 하여 작업을 수행하게 한다. 아래 코드는 C#으로 되어 있지만 기본적으로 Win32 API를 이용했기 때문에 다른 곳에서도 응용해서 실행할 수 있다. using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Wi.. 더보기
[DirectShow] DShow Filter 제작용 마법사 [DirectShow] DShow Filter 제작용 마법사 작성자: Ospace(ospace114@empal.com) DirectShow Filter제작용 마법사이다. 아래 파일은 Programming DirectShow for Digital Video and Television, Mark D. Pesce 책 부록 CD에 있다. 해당 버전은 이전 버전이라서 약간 수정해서 VC.Net 2003용에 맞게 수정했다. 아래는 앞의 파일을 설치 파일 형태로 제공되는데, 설치는 DirectX 폴더 위치를 물어보는데 잘 입력이 안된다. 현재 DirectShow은 DirectX SDK에 포함되는 것이 아니라 Flatform SDK에 포함되어 있기 때문이다. 앞에 zip으로 된 파일 설치가 어려우면 아래 설치파일로 설.. 더보기
[컨트롤이야기] 콤보박스 스크롤 크기 조절 [컨트롤이야기] 콤보박스 작성자: Ospace(ospace114@empal.com) 콤보박스 스크롤 크기 조절하기 VC에서 Dialog를 하나를 작성해서 콤보박스를 추가하고 데이터 목록을 추가하고 프로그램을 실행했다. 그런데, 딱 한줄의 데이터만 보이고, 옆에 조그만한게 스크롤바가 표시되었다. 아래 그림을 참조하길 바란다. 장말 짜증나는 일이다. MSDN을 찾아봐도 아무런 설명이 없다. 콤보닥스 스크롤 크기조절에 대해서는 아무말도 없다. 혹시나 해서 예제 코드를 만들어서 시험해도 마찬가지이다. 그 예제가 앞의 그림이다. 인터넷 검색해도 딱히 나오지 않은다. 2일째 막히고 있다. 그러던중 까막님의 블러그에서 중요한 힌트를 얻게되었다. 까막님은 VC 6.0이라서 지금 VC .Net 2003이나 2005하고는.. 더보기
텍스트 문서에 대한 처리 텍스트 문서 처리하는 작업이 생각만큼 쉽지 않다. 단순 텍스트라고 해서 예전 ASCII 코드 값만 생각할지 모르겠지만, 다양한 포멧의 텍스트 문서가 있다. 그렇기에 그에 따른 처리도 달라질 수 밖에 없다. 이미지가 JPG인지 GIF인지에 따라 처리를 달리하는 경우와 같다. 작성자: Ospace (ospace114@empal.com) http://ospace.tistory.com 텍스트 문서의 포멧이라고 하면 의아해할 수 있지만, 제가 말하고자하는 부분은 유니코드 관련된 부분이다. 즉, 다양한 인코딩 방식이 있다. 예를 들어 영어권(일반텍스트): ascii 비영어권: Unicode, UTF-8 기타로 다음과 같은 것이 있다. LE와 BE는 Little Endian과 Big Endian 차이이다. UTF-1.. 더보기
[컨트롤이야기] 아무도 말해주지않은 스크롤바 기능 [컨트롤이야기] 아무도 말해주지않은 스크롤바 기능 **작성자: Ospace (ospace114@empal.com) http://ospace.tistory.com/ 스크롤바는 상당히 많이 사용하고 있는 컨트롤 중에 하나이다. 내용을 한 화면에 표시하지 못할 경우 그 일부를 표시하고 나머지 내용은 스크롤 바로 상하, 혹은 좌우로 이동하면서 볼 수 있게 한다. 또는 일정 정수 구간 값을 이동하면서 원하는 지점의 정수 값을 가져올 수도 있다. 먼저 스크롤 바의 기본적인 이야기를 하고 후반에 좀더 깊이 다루겠다. Note: 예제 코드는 거의 없기에 간단하게 스크롤바를 작성하는 강좌를 보고 읽는게 이해하기 쉽다. 스크롤바에 대한 실사용을 보려면 아래 기타강좌 를 참고하시길 바란다. 스크롤바 들어가기 위의 그림은 W.. 더보기
[리소스이야기] CImageList에 대해 MFC의 CImageList는 말 그대로 "image list"로 이미지 목록을 관리하는 클래스이다. 단 조건이 있다. 같은 크기어야 한다. 그리고 일반 배열(zero-based index)처럼 접근이 가능하다. 이 클래스는 주로 CListCtrl 혹은 CTabCtrl에 등에서 같이 사용이 된다. 여기서는 사용법을 살펴보는 것이 아니라, 리소스에 관련한 내용을 다룰려고한다. 그러므로 이 클래스에 대해서 어느 정도 알고 글을 읽은게 이해하기 쉬울 것이다. 리소스 관리라고 하면 다른게 아니다. "정확히 할당하고, 정확히 해제한다." 글쓴이: 박재성(ospace114@empal.com) http://ospace.tistory.com/, 2007.07.04 CImgeList 생성하기 먼저 리소스를 할당하는 것 .. 더보기

반응형