본문 바로가기
반응형

vc++97

[개발/VC++] 운영제체 XP 이상 확인 [개발/VC++] 운영제체 XP 이상 확인 운영체제가 XP가 아닌 그 이상인지 확인한다. 비스타, 윈도우즈7, 그 이후 버전 등 // 운영체제가 xp 이상인가. BOOL COSInstallApp::OSVersionXPOver() { DWORD dwVersion, dwMajorVersion, dwMinorVersion, dwBuild; dwVersion = GetVersion(); // Get the Windows version. dwMajorVersion = (DWORD)(LOBYTE(LOWORD(dwVersion))); dwMinorVersion = (DWORD)(HIBYTE(LOWORD(dwVersion))); // Get the build number. if (dwVersion < 0x8000000.. 2012. 5. 2.
[개발/MFC] Sleep()함수 대신 프로그램 딜레이 시키기 [개발/MFC] Sleep()함수 대신 프로그램 딜레이 시키기 개발을 하다가 보면... 어떤 조건이 true가 될 때까지 기다려야 할 때가 있다. 그렇게 하려면 loop를 사용해야한다. 그리고 대기함수인 Sleep() 함수를 사용하게 되는 경우가 생기는데 이 함수를 사용하면. 모든 메세지 처리가 중단되기 때문에 프로그램 응답 없음과 같은 애매하고 난감한 사항에 처하게 된다. 그래서 이 Sleep()이라는 함수 대신에 프로세스나 쓰레드에서 사용되는 메세지는 처리되면서 특정조건이 만족할 때까지 기다릴 수 있는 함수가 필요하다. 대기시간 동안 메세지큐에서 메세지를 확인하여 처리하면서 기다리게 해준다. /////////////////////////////////////////////////////////////.. 2012. 5. 2.
[개발/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.
[개발/VC++] ATL CImage 클래스를 이용한 화면 크기와 일치하는 캡쳐하기 함수 [개발/VC++] ATL CImage 클래스를 이용한 화면 크기와 일치하는 캡쳐하기 함수입니다. // ATL CImage Class를 이용한 Screen Capture Source #include void CaptureWindow() { int nx =0, ny = 0; CImage cImg; CWnd *pDesktopWnd = GetDesktopWindow(); // 바탕화면 윈도우 인스턴스 HDC hDC = NULL; if(!pDesktopWnd) return; CWindowDC DeskTopDC(pDesktopWnd); // get HDC nx = GetSystemMetrics(SM_CXSCREEN); ny = GetSystemMetrics(SM_CYSCREEN); if(!cImg.Create(nx.. 2012. 1. 30.
[개발/VC++] 인터넷에 쿼리요청 보내기 / HttpSendRequest [개발/VC++] 인터넷에 쿼리요청 보내기 / HttpSendRequest 출처: http://toolz.pe.kr/32 QueryInternet : 인터넷에 쿼리요청 보내기 / html 코드 받아오기 1. 함수 원형 BOOL QueryInternet(const char *szAddress,UINT nPort,UINT nQuery) 2. 인자 설명 szAddress : 쿼리 요청을 보낼 주소 nPort : 포트번호 nQuery : 쿼리 횟수 3. 헤더 파일 wininet.h (?) BOOL QueryInternet(const char *szAddress,UINT nPort,UINT nQuery) { /* Return -1 : 포트번호입력오류 Return 2 : InternetOpen() 함수에러 Retu.. 2012. 1. 27.
[개발/vc++] 유니코드로 저장하기, UTF8로 저장하기 [개발/vc++] 유니코드로 저장하기 // 첫 식별자가 파일의 처음 부분이 "FFFE" 값이다. 그리고 두바이트씩 문자크기를 갖는다. TCHAR szPath[] = _T("12345"); int nlen = _tcslen(szPath); CFile file (_T("D:\\test.xml"), CFile::modeCreate|CFile::modeWrite); TCHAR szTmp[2]; WORD wd = 0xfeff; memcpy(szTmp, &wd, 2); file.Write(szTmp, 2); file.Write(szPath, nlen * sizeof(TCHAR)); file.Close(); [개발/VC++] UTF-8로 저장하기 // 헤더가 3바이트이다. 문자는 3바이트씩 저장 // utf-8로 저.. 2012. 1. 19.
반응형