반응형 Visual Studio12 [개발/VC++] SubClassing 하는 방법 VC++ Source Code // Subclassing.cpp : Defines the entry point for the application. // #include "stdafx.h"#include #define STRSAFE_NO_DEPRECATE WNDPROC g_pOldProc; char szAppName[]="Subclassing Demo"; LRESULT CALLBACK SubclassProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { if(uMsg == WM_CLOSE) { DestroyWindow(hWnd); PostQuitMessage(0); return 0; } return CallWindowProc(g_pOldProc, hWnd.. 2015. 1. 15. [개발/VC] IE 서브클래싱(subclass) [VC] IE 서브클래싱(subclass) WNDPROC g_pOldProc;static LRESULT CALLBACK MyIEProc(HWND, UINT, WPARAM, LPARAM); void CBand::SubClass(HWND hWnd){ // 64bit 환경을 위해서 SetWindowLongPtr() 사용 g_pOldProc = (WNDPROC) SetWindowLongPtr(hwndOfCallingComponent, GWLP_WNDPROC, (LONG_PTR)IEProc);} LRESULT CALLBACK CBand::MyIEProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { BOOL bRes = false; if (Message =.. 2015. 1. 15. [개발/VC++] 응용 프로그램 구성이 올바르지 않기 때문에 ... VC++ 개발을 하면서... 난감한 상황들이 한 두번이 아니다. 그 중 간단한 MFC 프로그램을 작성하는데 가상머신에서 실행하려니 에러가 난다. "응용 프로그램 구성이 올바르지 않기 때문에 이 응용 프로그램을 시작하지 못했습니다. 이 문제를 해결하려면 응용 프로그램을 다시 설치하십시오." 이런 에러가 난다. 좀 당황스럽다. VC++이 설치 되어 있지 않는 곳에서 실행하려면 도대체 무엇을 해줘야 하는가. 델파이에서는 런타임 라이브러리 팩키지 포함 옵션만 체크하면 문제가 없었는데 VC++에서는 그런 옵션이 없다... 알아보니 마이크로소프트에서는 manifest 관리를 위하여 debug/release 모드와 VC++버전별로 dll 파일을 별도로 하고 있다. 그런데... 이것을 함께 묶을 수 있다거나 함께 배포.. 2014. 9. 10. [개발/VC++] 실행중인 IE의 URL 구하기 실행중인 IE의 URL 구하기 IE 의 URL을 구하는 것은 생각보다 쉽습니다.좋은 예제파일이 함께 있어서 올려봅니다. 따라해 보세요. 실행중인 IE의 URL 구하기 // URL을 추출합니다. ASSERT(m_spSHWinds != NULL);long nCount = m_spSHWinds->GetCount();IDispatchPtr spDisp;for (long i = 0; i Item(va); SHDocVw::IWebBrowser2Ptr spBrowser(spDisp); if (spBrowser != NULL) m_ctrlUrlList.AddString(spBrowser->GetLocatio.. 2013. 3. 20. [개발/MFC] MFC 팁 54개 1. DC얻기 CClientDC dc(this); 2. Client 영역 구하기 GetClientRect(&rect); WM_SIZE 메시지발생후 cx,cy 사용 3. 문자열 사각형안에 그리기 pDC->DrawText(문자열,사각형,Style); Style : DT_BOTTOM - 문자열을 사각형 맨아래줄에배열 반드시DT_SINGLELINE과 함께사용 DT_CENTER - 문자열을 가로중앙에 배치 DT_VCENTER - 문자열을 세로중앙에 배치 DT_LEFT,RIGHT - 문자열을 좌,우로 배치 DT_SINGLELINE - 문자열을 한줄로만 쓴다 4. Brush 사용법 CBrush brushname(RGB(red,green,blue)); //브러쉬 생성 //이전Brush 저장, 새로운 Brush 선택 C.. 2012. 4. 3. [개발/MFC] 비주얼스튜디오 디버깅 메세지 출력하기 ///////////////////////////////////////////////////////////////////////////// // 디버그 로그 ///////////////////////////////////////////////////////////////////////////// void DebugLog(const char *format, ...) { va_list vl; FILE *pf = NULL; char szLog[512] = {0,}; va_start(vl, format); wvsprintf(szLog, format, vl); va_end(vl); // sends a string to the debugger for display. show me the visual studio o.. 2011. 9. 7. [개발/VS] 응용 프로그램을 위한 최상의 사용자 환경을 만드는 방법 [개발/VS] 응용 프로그램을 위한 최상의 사용자 환경을 만드는 방법 출처 : http://msdn.microsoft.com/library/aa468595 Dax Pandhi Nukeation Studios 2006년 4월 요약 : Dax Pandhi는 Windows 응용 프로그램을 위한 사용이 쉬운 사용자 인터페이스를 구현하는 방법과 사용자 환경 디자인 원칙에 대해 설명합니다. 목차 소개 적절한 UI를 만들기 위한 기본 원칙 보다 효율적이고 편리한 사용자 환경 조성을 위한 20가지 팁 결론 참조 및 자료 소개 개발자들은 한 가지 시각만을 갖는 경우가 흔히 있습니다. 아마도 약간 무미건조할 수 있겠지만 코드에는 분명히 느낌이 있습니다. 그러나 그뿐입니다. 때로는 기술, 그 중에서도 특히 '새로운' 기술과.. 2011. 7. 5. [IT/MFC] LINK : fatal error LNK1000: Internal error during IncrBuildImage Visual Studio 2008 에서 컴파일할 때 자꾸 발생하는 현상이다. 그것도 한 번씩 새로 컴파일할 때마다 발생하고 다시 빌드가 된다. 비주얼 스튜디오 2008에서 "LINK : fatal error LNK1000: Internal error during IncrBuildImage" 가 계속 발생한다면 서비스팩 1(Service Pack 1:SP1)을 설치하면 해결이 된다고 한다. 그래서 나도 설치하려고 한다. 혹시나 영문판을 사용중이라면 서비스 팩 또한 영문버전으로 설치하기 바란다. Microsoft Visual Studio 2008 Service Pack 1(iso) http://www.microsoft.com/downloads/ko-kr/details.aspx?familyid=27673C47.. 2011. 6. 30. [개발/MFC] MFC 팁 54개 1. DC얻기 CClientDC dc(this); 2. Client 영역 구하기 GetClientRect(&rect); WM_SIZE 메시지발생후 cx,cy 사용 3. 문자열 사각형안에 그리기 pDC->DrawText(문자열,사각형,Style); Style : DT_BOTTOM - 문자열을 사각형 맨아래줄에배열 반드시DT_SINGLELINE과 함께사용 DT_CENTER - 문자열을 가로중앙에 배치 DT_VCENTER - 문자열을 세로중앙에 배치 DT_LEFT,RIGHT - 문자열을 좌,우로 배치 DT_SINGLELINE - 문자열을 한줄로만 쓴다 4. Brush 사용법 CBrush brushname(RGB(red,green,blue)); //브러쉬 생성 //이전Brush 저장, 새로운 Brush 선택 C.. 2011. 5. 10. 이전 1 2 다음 반응형