출처 : http://www.gosu.net/GosuWeb/ArticleBList.aspx?CateCode=0502000

 
• General (52) • Database (0)
• Command and Function (0) • Internet & Network (8)
• API/DLLs (1) • COM/DCOM/COM+ (5)
• Threads, Processes & IPC (2) • Shell Programming (1)
• Windows forms (0) • Doc/View/Printing (1)
• Files and Folders (2) • Dialog and Windows (6)
• TextBoxs/String (0) • Button Controls (0)
• Menus (0) • Tab/Toolbars/Status Bar (0)
• Edit Controls (0) • List/Combo Controls (1)
• ListView/TreeView (1) • Static Controls (0)
• Samples (0)
 
General (52)
 
 
How to i386 32bit OS Kernel Compile in VC6 (0) / 작성자: bro / 작성일: 2004-10-14 / 평점: 4.56
본 문서는 VC6에서 어떻게 커널을 컴파일 할 수 있는가에 대한 간단한 소개를 하는 문서입니다. VC에서 OS를 만들기 위해서 생기는 특이한 사항과 간단한 컴파일 후 콘솔 커널을 띄우는 것의 데모까지 해보도록 합니다.
MFC DLL 간단 설명 (0) / 작성자: bro / 작성일: 2004-11-28 / 평점: 4.75
MFC DLL 과 관련된 여러 재미있는 내용들을 알아보았습니다. MSDN에서 본 영문 자료를 기반으로 이해를 위해 추가를 하거나 한 설명입니다.
프로그램내에서 한/영 전환하기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-25 / 평점: 4.75
프로그램적으로 한영키를 제어 하는 방법으로 Imm*() 함수를 사용하시면 됩니다. 아래의 예제 코드는 한글키와 영문키로 바꾸는 두가지 함수를 설명하고 있습니다
프로그램 한번만 실행하기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-28 / 평점: 4.75
프로그램의 중복 실행을 막는 방법에는 여러가지가 있겠지만, 공유 Data segment 를 사용하는 방법을 살펴보겠습니다.
MetaFile 사용 및 클립보드에 복사하기 (1) / 작성자: 하얀그림자 / 작성일: 2004-12-02 / 평점: 4.75
메타파일을 클립보드를 이용하여 다른 프로그램에 붙여넣을 수 있는 기능을 구현하자. 여기서는 윈도우메타파일이 아닌 확장 메타파일을 다루고 있다. 뭐, 그게 그것이지만,,,
트레이 아이콘(TrayIcon) 사라지는 버그 막기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-09 / 평점: 4.00
요즘 나오는 프로그램에서는 대부분 TrayIcon을 제공합니다. 단순히 프로그램 리스트(태스크 바)에 나오는 것보다는, TrayIcon이 사용자에게 보다 더 편리한 UI를 제공하기 때문입니다. 그런데, 익스플로어(인터넷 익스플로어가 아닙니다.)의 버그 때문에 <그림 1>과 같이 종종 TrayIcon이 Tray에서 사라지는 경우가 있습니다. 하지만, 몇몇의 프로그램은 사라지지 않고 계속 남아있는 경우도 볼 수 있습니다.
DLL, LIB 인텔리센스, Debug Step Trace되게 하기 (0) / 작성자: bro / 작성일: 2004-10-20 / 평점: 4.25
Static Lib나 DLL을 배포할때 DLL, LIB만 배포하면 쓰는 사람쪽(클라이언트)에서 인텔리센스와 스텝트레이스 디버깅을 제대로 할 수 없는 문제가 있습니다. 이 문서는 이를 위한 경험에 따른 팁입니다.
소스 세이프 ( Source Safe )의 간략한 소개와 설명 (1) / 작성자: 규서스 / 작성일: 2004-11-09 / 평점: 4.25
Visual Studio 에서 제공하는 공동 프로젝트 소스관리 툴인 소스세이프 (Source Safe)에 관하여 간략하게 설명합니다. 보다 세밀하고 어려운 기능은 많은 방법으로 테스트를 한 이후에 실제 프로젝트에 적용을 하면 보다 안전(Safe)한 프로젝트 소스와 리소스 관리가 되지 않을까 생각됩니다.
MFC DLL Debug/Release 구분해서 하기 (0) / 작성자: bro / 작성일: 2004-11-18 / 평점: 3.80
Release용 MFC42.dll 디버그용 MFC42d.dll 처럼 dll 만들때 디버그용 릴리즈용으로 세팅하는 방법에 대해서 알아봅니다.
CStringArray 정렬하기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-28 / 평점: 4.67
CStringArray 객체를 정렬하기 위해서 아래에서 보여주는 소스코드를 사용하실 수 있습니다. main() 함수에서는 CStringArray 객체를 만들고, 내용들을 추가시킵니다. 그리고 나서 화면에 출력하고 sort() 함수를 호출하죠. 이제 sort()함수가 끝나고 난후 다시 화면에 출력해서 sort() 함수가 제대로 역할을 수행했는지 결과를 보여줍니다. sort() 함수는 Bubble Sort 알고리즘을 사용했으면 CompareAndSwap()라는 함수를 구현하여 CString 객체끼리 서로 위치를 바꿀 수 있도록 하고 있습니다.
일반적인 윈도우 소멸 순서 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-28 / 평점: 4.00
MFC framework에서, 사용자가 frame 윈도를 닫게되면, 윈도는 기본적으로 OnClose 핸들을 call 합니다. 그리고 OnClose 내부에서는 DestroyWindow를 호출하죠. 가장 마지막으로 호출되는 함수는 OnNcDestroy이다.
_ASSERTE 가 GetLastError()를 망친다 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-15 / 평점: 4.00
MFC 에서 제공하는 에러 방지용 매크로인 _ASSERTE 가 호출되면 MFC 는 Last Error 를 0 을 셋팅하게 되어 GetLastError() 가 무용지물이 되어 버립니다.
윈도우용 CVS 의 활용-클라이언트_WinCVS (1) / 작성자: nak / 작성일: 2004-11-12 / 평점: 4.00
WinCVS는 CVS명령을 쉽게 사용하게 하는 클라이언트 프로그램이다. 비슷한 프로그램으로 여러가지가 나와 있지만 Tortoise CVS 프로그램과 가장 많이 사용하는 CVS 클라이언트 이다. 역시 군더더기는 빼고 사용법만 설명하도록 하겠다.
tstring: string for TCHAR (0) / 작성자: bro / 작성일: 2004-10-20 / 평점: 3.75
MBCS 환경이나 UNICODE 환경에서도 stl::string과 stl::wstring을 자동으로 선택해서 사용할 수 있는 tstring에 대해서 알아보도록합니다.
파일 버전 구해서 비교하기... (1) / 작성자: 데미소다오렌지 / 작성일: 2004-11-16 / 평점: 4.33
요즘은 대부분의 파일을 인터넷을 통해서 배포하는 것이 일반적입니다. 이럴 경우 파일이 업데이트 되었는지 검사하기 위해서 버전 정보를 구하는 함수가 필요합니다. 이 문서에서는 Win32 PE 파일에 포함된 버전 정보를 구하는 함수와 함께 구해진 버전을 비교하는 함수의 구현 과정을 포함하고 있습니다.
자동 버전 증가 매크로 (0) / 작성자: 데미소다오렌지 / 작성일: 2004-11-28 / 평점: 4.33
이 문서는 VC++의 자동 버전 증가 매크로에 대한 설명과 좀 더 개선된 매크로의 소스를 포함하고 있습니다.
HBITMAP을 BMP 파일로 만들어 주는 함수 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-07 / 평점: 4.33
어떤 내용이 들어있는 HBITMAP 값과 파일이름을 넘겨주면 주어진 파일 이름으로 Bitmap 이미지 파일을 만드는 함수입니다.
디스크 복사 및 포맷 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-28 / 평점: 4.33
디스크 포맷 기능을 하는 API함수가 존재하는데 이건 Undocument된 내용으로 MSDN에 나오지않고 헤더에도 선언되어있지 않습니다. 함수 Prototype을 선언하면 사용할 수 있습니다.
친절한 메세지 ( benign message ) (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-23 / 평점: 3.25
특정 Thread 나 Window 에 아무런 영향을 끼치지 않으면서 단순히 그 Thread 나 Window 가 살아있는지를 확인하고 싶을때 '친절한 메세지' 를 사용하시면 됩니다.
Source Safe과 Project를 분리시키기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-28 / 평점: 3.67
Source Safe와 연결되어있는 Project는 자체적으로 이와 관련된 정보를 가지고 있습니다. 이 정보를 제거하는 방법을 알아보겠습니다.
재밌는(?) 시스템 강제로 다운시키기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-28 / 평점: 3.67
필요한 경우가 거의 없겠지만(바이러스가 아니고서야. ^^;;), 시스템을 강제로 다운시키고자 하는 경우가 있을 수 있습니다. 이런 경우 아래의 예제에서 처럼 어셈블리 코드를 사용하는 방법과 Thread 를 와장창 만들어서 thread 러쉬(?)를 통해서 다운시키는 방법이 있습니다. 아래의 예제를 참고 하세요.
SearchPath()의 리턴값 알아보기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-28 / 평점: 4.50
"Win32 Programmer's Reference"에서 "SearchPath()"는 다음과 같은 reture value를 갖고 있습니다. The length (in characters) of the string copied to the buffer. -or- 0 if the function fails [see "GetLastError()" in the "Win32 Programmer's Reference" for more information]. 하지만, 만약 찾고자 하는 파일을 찾을 수 없을때에도 0을 return 해주는데, 이때 GetLastError()로 error값을 살펴보아도 error값은 변경되어 있지 않다는 것을 알수 있습니다.
MFC UNICODE 컴파일 하기 (0) / 작성자: bro / 작성일: 2004-11-10 / 평점: 4.50
MFC에서 다국어 버전( 한프로그램에서 여러 국가의 문자를 표현하는 )을 만들때 유니코드를 사용하므로 유니코드 컴파일을 해야 합니다.
윈도우용 CVS 의 활용-서버편 (0) / 작성자: nak / 작성일: 2004-11-11 / 평점: 4.50
많은 사람들이 알지만 귀차니즘 혹은 정보의 부족으로 인해 하지 않았던 CVS를 아주 쉽게 따라하며 직접 설치하고 사용 할 수 있도록하는데 이 문서의 목적이 있다.
Hatch 가 밀려나오는 브러시 수정하기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-15 / 평점: 4.50
Hatch 스타일이 적용된 브러시가 정상적으로 표시되지 않는 이유는 브러시 원점과 관련되어 있습니다.
IPicture를 이용한 JPG, GIF, BMP, WMF, EMF, ICO 보기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-15 / 평점: 4.50
JPG나 GIF 등의 이미지 파일포멧을 읽어올려면 직접구현하던가 아니면 해당 라이브러리(예, LeadTool,...)을 이용해야 됩니다. 그러나 윈도즈에서 제공하는 IPicture인터페이스로 간단하게 그림파일(JPG, GIF, BMP, WMF, EMF, ICO)을 불러오는 방법을 알아보겠습니다.
web session : MD5, RC4, base64 (0) / 작성자: bro / 작성일: 2004-12-24 / 평점: 4.50
웹 세션에 대해서알아본 후 md5, rc4, base64등을 사용하는 방법과 쉽게 사용 할 수 있는 md5, rc4, base64 소스를 얻어봅니당.
First-chance exception 에서 Stop 하도록 만들기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-19 / 평점: 4.50
가끔씩 Visaul C++의 Debug 창에 위의 문구가 출력되는 걸 볼 수 있습니다. 이 문구의 의미는 무엇이며, 어떻게 디버깅할 수 있는지 알아보겠습니다.
ISAPI필터dll Attach to Process로 디버깅하기 (0) / 작성자: bro / 작성일: 2004-11-17 / 평점: 3.00
VC의 Attach to Process를 하는 방법에 대해서 알아보고 예로 ISAPI 필터 dll을 디버깅하는 방법을 알아보았습니다.
스플리터 윈도우 위치 고정하기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-28 / 평점: 4.00
스플리터 윈도우의 크기를 위치를 공정하는 방법을 설명한다. 스플릿바의 행동양식을 살펴보면 스플리터 윈도우의 크기를 고정하는 방법을 찾을 수 있다.
CDROM Insertion / Removal 감지하기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-15 / 평점: 4.00
CDROM (or DVD) Insertion / Removal 감지하는 방법을 알아보겠습니다.
할당된 블록의 크기 구하기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-28 / 평점: 4.00
new, malloc을 사용해서 메모리 블럭을 할당한 경우에, 포인터를 통해 메모리 블럭의 크기를 구하는 함수입니다. 물론 디버그 버전에서만 사용할 수 있습니다.
base pointer를 지정하자. (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-16 / 평점: 4.00
microsoft c++에서는 __base 키워드를 사용해서 base pointer를 지정할 수 있습니다.
CPList - CPtrList for non-MFC (0) / 작성자: bro / 작성일: 2005-01-02 / 평점: 4.00
MFC의 CPtrList를 대치할 수 있는 non-MFC 환경하의 PList 클래스를 소개합니다
Top 윈도우들의 핸들을 알수 없을까? (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-25 / 평점: 3.50
프로그램을 하다 보면, 현재 Windows System 에서 돌아가는 상위 윈도우들을 알아야 되는 경우가 있습니다. 어떻게 하면 쉬울까요?
소스로 바로가는 TRACE (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-19 / 평점: 3.50
ANSI CRT에는 TRACE와 같은 기능이 없지만 Visual C++에는 _RPTn 들과 _RPTFn 들이 있습니다. 여기서 _RPTFn 을 주목할 필요가 있는데 _RPTFn 은 다음과 같은 형태의 매크로들을 말합니다.
파일로 트레이스 하도록 바꾸기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-19 / 평점: 3.50
MFC에서 말입니다. 모든 트레이스를 파일로 하도록 바꿔봅시다. 예전에 어떻게 좀 해볼라고 하다가 실패했는데, 간단하고도 효과적인 방법이 무수히 많이 있습니다. 그중에 하나!
폴더내의 dll 한 번에 등록하기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-19 / 평점: 3.50
쉘에서 for 명령을 지원하네요.
포인터 변수를 검증하기위한 매크로 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-16 / 평점: 3.50
포인터가 올바른 메모리 블럭을 가리키고 있는지 조사할 수 있는 API 들이 몇 가지 있습니다. ( IsBadWritePtr() 을 MSDN 에서 찾으시면 비슷한 친구들까지 모두 찾을실 수 있을겁니다 ) MFC 에는 이 API를 사용해서 간단한 매크로를 만들어 두었습니다.
COM 디버그 설정 (0) / 작성자: bro / 작성일: 2004-11-29 / 평점: 3.50
웹페이지에 붙은 COM 디버깅 VB 프로그램에 붙은 COM 디버깅 MTS COM+ 디버깅 참고 ISAPI DLL 디버깅
특정 파일의 Property 창 띄우기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-28 / 평점: 3.50
프로그래머가 직접 정보를 수정하지 않고 사용자가 정보를 수정하게 하고 싶은 경우에 파일의 Property 창을 띄울 수 있습니다. 그럴때 간단히 ShellExcute() 를 사용해 보시면 됩니다.
CTString - CString on non-MFC (0) / 작성자: bro / 작성일: 2005-01-02 / 평점: 5.00
CString만 사용하는 경우 MFC 라이브러리를 포함하기에는 무겁습니다. 이럴때 간단히 대치할 수 있는 클래스로 CTString을 소개합니다.
Watch 창에서 함수 실행하기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-19 / 평점: 3.00
아시는 분은 다 아시겠지만, watch 창에서는 함수를 실행시킬 수 있습니다.
Floating-Point Error가 Exception을 발생하도록 만들기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-19 / 평점: 4.00
int대신 float를 사용했다면 Exception은 발생하지 않습니다. 어떻게하면 Exception이 발생하도록 만들 수 있을까요?
특정 컨트롤에서 한글을 입력받고 싶지 않을때 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-21 / 평점: 4.00
특정 컨트롤에서 영문만 입력 받고자 할때에는 IME의 사용을 중지하면 됩니다.
WaitCursor가 만들어지지 않는 경우 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-23 / 평점: 4.00
모래시계 커서를 만드는데 실패하셨던( 저처럼) 분들은 부디 유용하게 사용하시기 바랍니다.
트레이 메뉴가 사라지지 않을때 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-19 / 평점: 4.00
트레이 아이콘에서 메뉴를 띄울 때 메뉴의 특정 항목을 선택하지 않고 다른 윈도우를 선택하게 되면 메뉴가 사라지지 않습니다. 이 문제는 임의의 윈도우를 생성하여 메세지가 사라지도록 하는 것입니다.
MFC 라이브러리에 동적으로 링크된 정규 DLL (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-19 / 평점: 4.00
MFC 라이브러리에 DLL을 동적으로 링크하는 방법을 알아보도록 합니다.
연결 프로그램 찾기 다이얼로그 띄우기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-28 / 평점: 4.00
Explorer 에서 파일 아이콘을 더블클릭할 경우 파일의 확장명에 따라 연결되어 있는 프로그램이 동작하게 되어 있다. 하지만 연결되어 있는 프로그램이 없을 경우 "연결 프로그램 찾기" 다이얼로그가 화면에 나타나게 할 수 있습니다.
xmlite : simple xml parser (0) / 작성자: bro / 작성일: 2004-12-17 / 평점: 4.00
XMLite 는 DOM 기반의 사용하기 쉬운 c++ XML 파서입니다. 처음에는 간단히 엘리먼트만 파싱하도록 하였다가, 필요에 의해서 여러가지 기능이 추가되었습니다.
Capture가 되지 않는 경우 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-23 / 평점: 3.00
Capture가 되기 위해서는 마우스 버튼이 눌려져 있어야 한다는 사실을 아십니까?
간단한 LoadString (0) / 작성자: bro / 작성일: 2004-11-26 / 평점: 2.00
애플리케이션의 문자열 리소스를 가져다 쓰려면 LoadString을 호출해야 합니다. MFC에서는 그나마 편리하게 사용하라고 CString의 맴버 함수로 LoadString 맴버 함수를 제공 하고 있지만, 매번 CString 객체를 생성해서 사용해야 하므로 불편하기도 합니다. 게다가, 문자열 리소스에서 인자를 받게 하고 싶으면 더욱 불편합니다. 그래서 아래와 같은 방식으로 저는 간단한 LoadString 매크로를 만들어 사용하고 있습니다.
 

 
Internet & Network (8)
 
 
PHP나 ASP 코드 직접 호출하기 (2) / 작성자: 디버깅전문가 / 작성일: 2004-11-09 / 평점: 4.00
IE(Internet Explorer)같은 웹 브라우저를 이용하지 않고, 서버측에 있는 코드를 직접호출하는 방법에 대해서 알아보도록 합니다.
네트워크 정보 얻어오는 방법 (3) / 작성자: bro / 작성일: 2004-11-10 / 평점: 4.00
1. MAC Address 그냥 보는 방법 2. GetNetworkParams / GetAdaptersInfo 3. NIC 카드 랜카드 이름 얻기
HTML코드를 임시파일로 저장한 파일 URL얻기 (0) / 작성자: bro / 작성일: 2004-11-29 / 평점: 4.00
가끔가다보면 동적으로 HTML코드를 만들어서 이를 네비게이트해야하는 경우가 있습니다. about 을 사용하면 간단한 경우 해결되지만, 제약으로 인해 몇 K 이상되는 코드는 넣을수 없습니다.
인터넷에 연결되어 있는지 알아보기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-21 / 평점: 4.33
현재 컴퓨터가 인터넷에 연결되어 있는지를 확인하는 함수를 알아보도록 합니다.
mshtml 메모리 릭 최소화하기 (0) / 작성자: bro / 작성일: 2004-11-29 / 평점: 4.50
mshtml은 웹브라우저 컨트롤이나 CHtmlView를 사용할때 내부 HTML 다큐먼트 안의 엘리먼트 값을 보거나 수정하기 위해서 쓰는 HTML DOM Parser COM 라이브러리이다. 문제는 잘못사용하면 메모리릭이 많이 생긴다는 것이다.
HTML 스크립트 함수 ActiveX에서 호출하기 (0) / 작성자: bro / 작성일: 2004-11-30 / 평점: 4.50
IDocument 를 얻은 후 get_script로 스크립트 객체를 얻은 후 GetIDsOfNames( 함수명 ) 으로 해당 함수를 얻은 후 Invoke 할 수 있습니다.
HTML 리소스에 넣어 Navigate 하기 (0) / 작성자: bro / 작성일: 2004-11-29 / 평점: 4.00
HTML 페이지를 리소스로 EXE에 포함하여 이를 Navigate 하는 방법에 대해서 알아봅니다.
웹페이지가 이동될때 진입하는 함수 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-07 / 평점: 4.00
웹상에서 구동되는 ActiveX 컨트롤의 경우 웹페이지가 이동될때 진입하는 함수를 알아본다.
 

 
API/DLLs (1)
 
 
local folder에 있는 dll 사용하게 만들기 (2) / 작성자: 디버깅전문가 / 작성일: 2004-12-21 / 평점: 3.00
dll hell 을 방지하기 위한 방법 중 한가지로, local 폴더에 dll을 두고 혼자만 쓰는 방법을 들 수 있습니다. 그와 관련하여 재밌는 기능이 한 가지 있네요..
 

 
COM/DCOM/COM+ (5)
 
 
MS Script Control in MFC (0) / 작성자: bro / 작성일: 2004-11-20 / 평점: 5.00
MS VB Script Control을 MFC 에서 사용하는 방법에 대해서 간략하게 알아보았습니다.
Lite control에서 이벤트가 가능하게 하기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-19 / 평점: 4.00
Lite control에서 이벤트가 가능하게 하기위해서는 IProvideClassInfo2Impl를 상속받게 하면 된다.
ATL Object가 한글 폴더에 있으면 등록이 안되는 버그 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-19 / 평점: 4.00
이 버그는 MS에서 인정하는 버그이고 해결책까지 나와있습니다. 아래 참조에서 MSDN 항목을 확인하실 수 있습니다. 시키는대로 했는데 잘 안되서, 독자적인 해결책을 제시합니다.
OLE를 이용한 Drag and Drop (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-25 / 평점: 4.00
Ole를 이용하여 간단하게 Window 사이에서 Drag and Drop하여 데이터를 교환하는 방법을 설명합니다.
다른 스레드에서 인터페이스 받아다 쓰기 마샬링하기 (0) / 작성자: bro / 작성일: 2004-11-30 / 평점: 2.00
같은 에러는 다른 스레드에서 인터페이스 포인터 받아와서 직접 메소드를 호출하려고 할때 나는 에러다. 이런 경우 해당 인터페이스를 스레드로 넘겨줄때는 마샬링을 해야 한다.
 

 
Threads, Processes & IPC (2)
 
 
멀티 프로세서 시스템에서 한개의 CPU만 사용하도록 하기. (3) / 작성자: nak / 작성일: 2004-11-10 / 평점: 4.80
멀티 프로세서 시스템에서 프로그램을 개발시 가장 좋은 방법은 생성한 스레드가 잘 분산되어 처리 되도록 하는것이다. 그러나 멀티 프로세서 시스템을 염두하지 않고 만들어진 프로그램에서 비정상적인 종료, dead lock 등으로 인한 pendig 현상등의 문제가 발생하면 당혹스러울 수 밖에 없다. 아주 간단한 팁이지만 실무에서 유용하게 사용할 수있는 팁을 소개한다.
Safe TerminateProcess() (0) / 작성자: snaiper / 작성일: 2004-10-20 / 평점: 4.50
Win32 API 에 보면 TerminateProcess 라는 함수가 있습니다. 함수명 그대로 Process 를 강제로 Kill 시키는 함수입니다. 하지만 권고하지 않는 함수이고, 여러가지 Side Effect 들이 존재합니다. 이를 피하고 안전하게 처리할 수 있는 방법을 소개합니다.
 

 
Shell Programming (1)
 
 
바탕화면, 즐겨찾기, 내 문서 등의 패스얻기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-09 / 평점: 4.67
Windows에서는 여러가지 특별한 폴더들이 있습니다. 내 문서도 그렇고 휴지통 등이 이에 속합니다. 이들 경로는 절대적인 경로가 아니기 때문에(대표적인 예가 Windows root 경로나 System 경로등이죠) 절대적인 경로를 사용하는 경우에는 낭패를 보기 쉽상입니다. 이 글에서는 SHGetSpecialFolderPath()를 이용하여 윈도우에서 사용하는 특별한 폴더들의 패스를 얻어오는 방법을 설명합니다.
 

 
Doc/View/Printing (1)
 
 
Doc/View 구조 없는 SDI에서 스플릿 윈도우 만들기 (0) / 작성자: bro / 작성일: 2004-11-28 / 평점: 4.00
Visual C++ 6 에서 새롭게 지원된 MFC App Wizard 옵션은 바로 다큐먼트 뷰 구조를 사용하지 않고 SDI나 MDI를 할 수 있다는 것입니다. 다큐먼트 뷰 구조가 아닐때 스플릿 윈도우를 만드는 방법을 간단히 알아보도록 합니다.
 

 
Files and Folders (2)
 
 
실행 파일(바이너리)에서 파일 이름 가져오기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-21 / 평점: 4.50
실행 파일의 헤더안에 저장되어 있는 정보를 읽는 것은 심볼릭 정보나 실행 파일에 대한 더 자세한 것을 얻을 수 있는 방법입니다.
파일 사이즈 별로 단위를 나누어서 출력하기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-21 / 평점: 4.00
파일의 사이즈를 바이트 연산을 하여, 화면에 적당한 값으로 출력하는 함수를 알아보도록 합니다.
 

 
Dialog and Windows (6)
 
 
Dialog Box의 Control에 Tooltip넣기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-28 / 평점: 4.67
Tooltip은 CToolTipCtrl 클래스를 이용하면 쉽게 구현할 수 있습니다. 먼저 Create()를 호출해서 Tooltip 객체를 생성합니다. 그리고 나서 AddTool()을 호출해 각각의 컨트롤과 Tooltip 문자열을 연결해 줍니다. 여기서 Tooltip 문자열을 표시해 주는 함수는 ReplyEvent()이며, Tooltip 컨트롤 객체를 생성해 주고 컨트롤과 연결할 수 있는 가장 적당한 곳은 WM_INITDIALOG 메시지의 핸들러(OnInitDialog())입니다.
Dialog Base 프로그램을 Tray에 등록할 때 문제점 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-28 / 평점: 4.33
Dialog Base 프로그램을 Tray에 등록할 때 대부분 Window를 Hide시켜서 실행하게 된다. 그런데 Dialog Base로 프로그램 작성하면 프로그램이 처음 실행되면서 화면에 잠깐 나타났다가 사라지는 모습을 볼 수 있다. 이런 현상을 피할 수 있는 방법을 소개한다.
윈앰프처럼 TaskBar와 SystemTray 마음대로 주무루기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-15 / 평점: 4.50
윈앰프에서 보면 TaskBar와 SystemTray에 동시에 보여주는 모드 혹은 각각 보여주는 모드 그리고 모두 보여주지 않는 모드가 있습니다. 4가지의 기능을 모두 구현해 보도록 하겠습니다.
다이얼로그 리소스의 실제 크기 얻기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-15 / 평점: 5.00
VC++ 의 Resouce Editor 에서 작성한 다이얼로그의 크기는 실제 화면의 pixel 단위와 맞지 않기 때문에 종종 컨트롤 배치시에 어려움을 겪게 됩니다. 아래의 함수는 리소스에서 작성한 다이얼로그의 실제 크기를 구하는 함수입니다.
모달 다이알로그 시작시 숨기기 (0) / 작성자: 데미소다오렌지 / 작성일: 2004-11-30 / 평점: 4.00
이 문서는 MFC의 모달 다이알로그의 생성시 초기 상태를 숨김 상태로 하는 방법을 설명하고 있습니다.
Brush 의 패턴을 사용하여 스킨 구현하기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-12-19 / 평점: 4.00
브러시의 패턴을 설정할 수 있다는 점과 브러시의 원점을 설정할 수 있다는 점에서 착안하여 만들어본 스킨 예제입니다.
 

 
List/Combo Controls (1)
 
 
List Control 에 다른 Control 넣기 (0) / 작성자: 디버깅전문가 / 작성일: 2004-11-28 / 평점: 5.00
특정 Column에서 다른 Control 을 띄우는 방법 설명. 여기서 사용한 방법은 현재 Cursor가 있는 위치를 파악한후 그 위치에 적당한 크기의 Edit Control를 생성 시킨다.
 

 
ListView/TreeView (1)
 
 
리스트 컨트롤 몇가지 팁 (0) / 작성자: bro / 작성일: 2004-10-20 / 평점: 4.86
1. 특정 ROW 포커스 주기 2. 특정 ROW로 가기 3. 헤더 컬럼수 얻어오기 4. 컬럼의 너비를 이쁘게 주기 5. 한줄 쭉 선택되게 하기, 그리드 라인 주기 6. 선택한 아이템(ROW)를 지우기 7. 두 아이템을 스왑 하기 8. 기존에 선택되어있는 것을 해체하기
 

'C/C++언어' 카테고리의 다른 글

함수포인터란 ?  (0) 2007.09.06
[본문스크랩] 파일 입.출력  (0) 2007.09.06
[강좌] MASM 6.0 사용법  (0) 2007.09.06
어셈블리 초급 기초 #1(정태식님)  (0) 2007.09.06
어셈블리 초급 기초 #2(정태식님)  (0) 2007.09.06

+ Recent posts