- Today
- Total
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
- reactnative
- Back 키 클릭 감지
- 시간대 테이블생성
- ffmpeg
- CentOS
- MariaDB
- 코드로 서버 재실행
- 말줌임 CSS
- 파티션 빠른 삭제
- SQL
- sql exception
- 터치좌표 view
- springboot
- rn
- vc++
- kill -9
- 시간대별 통계
- group by
- Activity 전체화면
- MySQL
- c언어
- view 획득
- 스크롤적용
- CSS
- mybatis exception
- 가변영역 스크롤
- MFC
- 피쉬랜드
- pid 찾아 kill
- springboot 재가동
목록전체보기 (116)
개발은 하는건가..
1.요약 이전에 제가 LHCTRACE라고 해서 debug창에 trace된 내용을 더블클릭하면 소스의 위치로 찾아가는 매크로를 만든 적이 있습니다.(팁 게시판 참조) 하지만 이미 Visual C++의 CRT에 포함되어 있다는 걸 이제야 알았습니다. 2.본문 ANSI CRT에는 TRACE와 같은 기능이 없지만 Visual C++에는 _RPTn 들과 _RPTFn 들이 있습니다. 여기서 _RPTFn 을 주목할 필요가 있는데 _RPTFn 은 다음과 같은 형태의 매크로들을 말합니다. _RPTF0(reportType, format); _RPTF1(reportType, format, arg1); _RPTF2(reportType, format, arg1, arg2); _RPTF3(reportType, format, ar..
MFC 프로그램을 만들때, 프로그램의 성능을 최적화 하기 위해서 화면의 전체를 그리지 않고, 그려야 하는 부분만 계산하여 다시 그리도록 하는 방법을 사용하고 있습니다. 이경우 일반적으로 CView 클래스의 onDraw() 함수안에서 GetClipBox() 함수를 사용하는데, 아시는지 모르겠지만, GetClipBox() 는 항상 윈도우의 전체 영역을 리턴하도록 되어 있습니다. 왜냐하면 MFC로 만들어진 SDI의 경우 CView와 CFrameWnd가 CS_VREDRAW 와 CS_HREDRAW 속성을 가지고 있는 윈도우 클래스를 사용하기 때문입니다. 따라서, 윈도우가 리사이징 될때마다 항상 자신의 영역 전체를 다시 그리도록 되어 있는 것입니다. 따라서, 이 문제점을 해결하기 위해서는 CS_VREDRAW 와 C..
#ifndef WS_EX_LAYERED #define WS_EX_LAYERED 0x00080000 #define LWA_COLORKEY 0x00000001 #define LWA_ALPHA 0x00000002 #endif // ndef WS_EX_LAYERED Then some declarations in the header-file: // Preparation for the function we want to import from USER32.DLL typedef BOOL (WINAPI *lpfnSetLayeredWindowAttributes)(HWND hWnd, COLORREF crKey, BYTE bAlpha, DWORD dwFlags); lpfnSetLayeredWindowAttributes m_p..
BOOL TransparentMyBlt( HDC hdcDest, int nXDest, int nYDest, int nWidth, int nHeight, HDC hdcSrc, int nXOriginSrc, int nYOriginSrc, int nXSrc, int nYSrc, COLORREF colorTransparent) { CDC dc, memDC, maskDC;//, tempDC; dc.Attach( hdcDest ); maskDC.CreateCompatibleDC(&dc); CBitmap maskBitmap; //add these to store return of SelectObject() calls CBitmap* pOldMemBmp = NULL; CBitmap* pOldMaskBmp = NULL;..
// 16bit 컬러 값에서 RGB 추출 COLORREF color; // RGB 컬러값 BYTE getRed(WORD color) { return (color>>10); } BYTE getGreen(WORD color) { return (color>>5)&31; } BYTE getBlue(WORD color) { return (color&31); } // 추출한 RGB 16bit 컬러로 병합 WORD rgbMix(int red,int green,int blue) { return (red
링크 라이브러리에 Msimg32.lib 추가 BLENDFUNCTION bf; bf.AlphaFormat = 0; bf.BlendFlags= 0; bf.BlendOp = AC_SRC_OVER; bf.SourceConstantAlpha = 100; AlphaBlend(pDC->GetSafeHdc(), 0, 0, width, height, dcMem.GetSafeHdc(), 0, 0, width, height, bf);
**** Raw image Data를 DC에 사용할 수 있게 가공 // 비트맵 정보 객체 생성 및 초기값 설정 (가로 / 세로 / colordepth) PBITMAPINFO pBmp = new BITMAPINFO; pBmp->bmiHeader.biSize = sizeof(BITMAPINFOHEADER); pBmp->bmiHeader.biWidth = width; pBmp->bmiHeader.biHeight = height; pBmp->bmiHeader.biPlanes = 1; pBmp->bmiHeader.biBitCount =m_bInfo.bmiHeader.biBitCount; pBmp->bmiHeader.biCompression = BI_RGB; pBmp->bmiHeader.biSizeImage = 0..
변수 2개의 값을 서로 swap 하는 매크로입니다. #define SWAP(a,b) {(a)^=(b)^=(a)^=(b);}
jump to 0 Addr void (* reset_ptr)(void); *(dword *)(&reset_ptr) = 0x00000000L; reset_ptr();
첫째, 문자열 리터럴은 합쳐진다. 이는 매크로라기 보다는 C언어의 특징이다. 이 기능을 사용하면 긴 출력 문장을 손쉽게 여러 개의 부분 문자열로 나눌 수 있다. 또한 다음에 소개될 매크로 연산자를 사용할 때의 표현식도 좀 더 풍부하게 구성할 수 있다는 장점이 있다. printf("이름: %s\n" "나이: %d\n" "전화번호: %s\n", a, b, c); 위의 코드를 보자. printf 다음에는 총 세 개의 연속된 문자열 리터럴이 나타난다. 이 세 개의 리터럴은 합쳐져서 "이름: %s\n나이: %d\n전화번호: %s\n" 과 동일한 문자열이 된다. 둘째, ## 연산자를 사용해서 토큰을 합성해서 만들어 낼 수 있다. ##은 합치기 연산자 이다. 다음과 같은 기능을 생각해 보자. COUNT(start)라..