컴퓨터공부/MFC 10

[MFC]Visual Studio 2008 라이브러리 및 헤더 파일 추가 방법

(공통)도구 - 옵션 - 프로젝트 및 솔루션 - VC++ 디렉토리'플랫폼' 선택 및 '다음 파일의 디렉터리 표시' 에 '라이브러리 파일' 선택그런다음 디렉토리 추가(해당프로젝트만)해당프로젝트 - 속성 - 링커 - 일반 - '추가 라이브러리 디렉터리' 에 추가 2. 라이브러리 추가법해당 프로젝트 - 속성 - 링커 - 입력 - '추가 종속성' 에 lib파일 풀로 써준다 3. 헤더파일 추가해당 프로젝트 - 속성 - C/C++ - 일반 - '추가 포함 디렉토리' 에 추가 출처 : http://blog.naver.com/PostView.nhn?blogId=nimi315&logNo=50047105462

컴퓨터공부/MFC 2012.07.04

DLL Injection - 2.SetWindowsHookEx() 함수를 이용한 방법

Microsoft에서는 프로세스간의 주고 받는 메세지를 후킹할 수 있는 함수를 제공한다. 바 로 SetWindowsHookEx()함수이다. 이 함수를 통해 DLL을 특정 프로세스나 모든 프로세스에 Injection할 수 있다.그리고 User-mode(ring 3)에서 동작하는 Keylogger들 대부분이 이 함수를 사용하여 구현된다.(SetWindowsHookEx()함수를 통해 후킹(Hooking)을 할 경우 전역 후킹이 간단하므로 많이 사용한다.) 먼저 SetWindowsHookEx()함수의 원형부터 알아보자. (MSDN에 있는 내용이다.) HHOOK SetWindowsHookEx( int idHook, HOOKPROC lpfn, HINSTANCE hMod, DWORD dwThreadId ); 첫번째 ..

컴퓨터공부/MFC 2009.10.25

Invalidate()

Invalidate()함수는 화면의 영역을 무효화 영역으로 만들어 버립니다 (출처 : 'MFC에서 Invalidate()함수와 InvalidateRect() 에 대해 질문!!' - 네이버 지식iN)강제로 WM_PAINT 메시지를 발생 시킨다. Invalidate(false) : 다시 그려야 되는 영역을 지우지 않고 다시 그림. 겹치게 그리기 Invalidate(true) : 화면을 지웠다가 새로 그리는 명령어 덤.화면 업데이트뷰 : Invalidate()함수 호출도큐먼트 : UpdateAllViews(NULL) WM_PAINT메시지를 발생시킨다. 9. InvalidateRect() OnDraw() 함수를 호출하며, 리턴 값이 TRUE이면 배경화면까지 다시 출력하고 FALSE이면 나머지 부분만 출력한다. ..

컴퓨터공부/MFC 2006.11.15

MFC 팁 모음

MFC에 대한 유용한 팁 모음자료출처 : 마이크로소프트웨어 잡지, www.devpia.com, www.codeland.co.kr- Control 에디트 박스에서 엔터키 확인 방법 CListCtrl에 컬럼 넣기 에디트 컨트롤을 마음대로 컨트롤을 사용할 수 없게 처리하려면 컨트롤 크기를 뷰에 맞추기 윈도우 95/NT에서 아이템 개수 제한 여부 트리 컨트롤을 이용한 애플리케이션 만들기 체크 리스트박스를 템플릿에 올리기 리스트박스 깜박임 멈추기 입력 컨트롤에 텍스트를 추가하려면 입력 컨트롤에서 허용하는 문자 제한하기 줄 단위로 끊기는 CEditView를 만들려면 CEdit에서 엔터키 감지하기 CListCtrl에서 팝업 메뉴 구현 다이얼로그 에디트 박스에서 값 입력받기 CtrlList에서 컬럼 고정시키기 탭 콘트..

컴퓨터공부/MFC 2006.09.15

[펌] 다이얼로그베이스 기반에서의 도큐먼트 참조방법

질문: 다이얼로그베이스 기반에서의 도큐먼트 참조방법 mr_crazy / 2005-04-26 23:50 안녕하세요! 왕초보 인데 궁금한점이 있어 질문 남기게 ?營윱求?.. 다이얼로그 베이스로 프로그램을 만들고 있는데요 도큐먼트클래스를 기반으로 새 클래스를 만들었습니다.. 도큐먼트에서 사용한 변수들을 참조하려고 하는데요 잘모르겠네요... 뷰클래스에선 GetDocument()라는 함수로 도큐먼트 변수를 참조할수가 있잖아요... 혹시 다이얼로그에서도 그런 함수가 있나요? 없다면 어떻게 참조해야 하는지 궁금합니다... 초보에게 많은 가르침을 주세요... 제가 CCamDocument *pDoc; 이렇게 하고 pDoc->.... 이런식으로 했거든요.. 그러니까 local variable 'pDoc' used with..

컴퓨터공부/MFC 2005.06.03

[펌] C/C++/MFC FAQ 모음

트루 칼라를 사용하는 방법을 알고 싶거든요...??? pop3서버와 관련된 질문입니다. 컴터를 산지 5개월정도밖에 되지 않았는데....느려지고... 다이얼로그 박스기반의 윈도우에 메뉴를 띄우려면??? DAO에서 두개의 테이블 조인??? 모달리스 다이얼로그와 작업표시줄... 뷰윈도우에서 차일드 윈도우 만들기.. OCX를 만드는데 현재 어플리케이션에 HWND얻어오는 방법 16bit 비트맵 파일의 헤더정보에 대해... vb에서 만든 dll을 vc에서 쓰는법좀 가르쳐줘요... 메세지 훅킹에 의한 상하 좌우 키보드 조작법을 알고 싶습니다. edit control에서 입력되는 FontSize를 줄이는 방법? 현재 프린트 스풀러에 대기중인 모든 작업에 대한 정보를 얻는 방법 비주얼씨에는 비주얼베이직의 DoEvents..

컴퓨터공부/MFC 2005.06.03

[펌] CString을 char*로 변환하는 방법이 궁금합니다.. 또 그 반대도 궁금..

질문: CString을 char*로 변환하는 방법이 궁금합니다.. 또 그 반대도 궁금.. isanghoon / 2003-02-24 09:31 제목 그대롭니다... CString으로 선언한 변수를 char*로 바꾸는 방법이 궁금합니다. 또 반대로 char*로 선언된 변수를 CString으로 바꾸는 방법도 궁금합니다.. 꼭 부탁합니다. 답변: CString char * softgear / 2003-02-19 11:12 CString -> char * CString str; str = "Hello"; char* ss = LPSTR(LPCTSTR(str)); char * --> CString char ss[] = "Hello"; CString str; str.Format("%s", ss);(Format대신에 G..

컴퓨터공부/MFC 2005.05.26

[펌] bmp파일 경로 얻어와 출력하기

strcat함수는 문자열 뒷부분에 문자열을 추가하는 함수TCHAR lpszWinPath[MAX_PATH]; //lpszWinPath 라는 문자열 변수 선언 TCHAR lpszOldPath[MAX_PATH]; //lpszOldPath 라는 문자열 변수 선언 GetWindowsDirectory(lpszWinPath, MAX_PATH); // lpszWinPath에 윈도우 디렉토리 위치를 얻어옴 ex> c:\\windows GetCurrentDirectory(MAX_PATH,lpszOldPath); // lpszOldPath에 현재 디렉토리위치를 저장함 SetCurrentDirectory(lpszWinPath); // ===> 이것이 현재 디렉토리 위치를 지정한 변수값으로 바꾸는 겁니다. 여기서는 윈도우 디렉..

컴퓨터공부/MFC 2005.05.23