본문 바로가기

2017/07

VS2013 mfc static bitmap 추가시 버그 (error RC2108: expected numerical dialog constant) 출처 : http://fantaziulo.blog.me/220208647844 인터넷에서 돌아다니는 오픈소스를 받아서 개발하는 도중에 아래와 같은 에러가 발생하였다.error RC2108: expected numerical dialog constant PUSHBUTTON 에서 에러가 나길래 아래와 같이 수정했는데도 에러가 났다...문제는 PUSH BUTTON 이 아니라 PUSH BUTTON 위에 CONTROL이 있었는데 해당 CONTROL을 아래와 같이 수정하면 된다 오류 : CONTROL "",IDC_CHARTVIEWER0,91,52,15,13,NOT WS_GROUP정상 : CONTROL "",IDC_CHARTVIEWER0,"Static",SS_BITMAP,119,1,15,13 vs2013에서 mfc에.. 더보기
STL Queue 사용법 1. 전처리#includeusing namespace std; 2. 선언queue Queue; 3. 삽입값을 삽입한다. Queue.push(데이터); 4. 참조가장 먼저 추가된 데이터를 가져온다. 변수 = Queue.front(); 5. 삭제가장 먼저 추가된 데이터를 삭제한다.Queue.pop(); 6. 갯수큐가 가지는 항목의 수를 가져온다. 변수 = Queue.size(); 7. 확인큐가 비어 있는지 검사한다.false : 큐에 항목이 있음.true : 큐에 항목이 없음. #include queue Q //Q라는 이름의 int 요소들로 구성된 큐 선언Q.push(값) //큐 Q에 값을 넣는다. 리턴 값이 없다.Q.pop() //큐 Q의 front를 삭제한다. 리턴 값이 없다.Q.front() //큐 Q.. 더보기
[MFC] CString 문자열 파싱하기 오늘은 문자열 파싱에 대해서 간단히 정리한다.문자열 파싱이란 하나의 문자열에서 각각의 문자들을 분리하는 과정이라고 생각하면 된다.이 과정을 통해 긴 문자열에서 원하는 문자만 뽑아 임의의 변수로 저장하여 사용할 수 있다. 방법 1. AfxExtractSubString() 함수 이용AfxExtractSubString() 함수를 이용하여 간단하게 문자열을 분리할 수 있다.다음 예제를 살펴보자 예제 1)123456CString str = "118.131.90.22"; //파싱할 문자열CString strA, strB, strC, strD; //파싱되는 문자열을 담을 변수선언AfxExtractSubString(strA, str, 0, '.'); // strA == "118"AfxExtractSubString(st.. 더보기
개발자 이력서 작성 및 면접 참고사항 우리회사는 개발자를 채용하는데 기획팀장인 나도 채용에 관여를 한다. 이유는 간단하다. 개발자가 나와 일을 많이 하기 때문이다. 최근 회사에서 개발자를 채용중이기 때문에 많은 이력서 및 면접을 보는데 참 안타까운 부분들이 많다. 오늘은 개발자들이 입사지원 시 많이 실수하거나 간과하는 사항들에 대해서 이야기를 하고자 한다. 물론 내가 타인의 취업에 대해서 조언을 해줄만한 위인은 못되지만…그럼에도 불구하고 내 글이 누군가에게 도움이 되길 바라며 썰을 풀어본다. 1. 프로젝트 경력사항에도 약간의 설명이 필요하다.경력이 5년 이상인 개발자의 경우 대부분 프로젝트 경험이 많다. 그런데 이력서를 보다보면 많은 사람들이 프로젝트를 나열만 하지 정작 그 프로젝트가 무슨 프로젝트 였는지에 대한 설명이 없다. 아래 내용을 .. 더보기
취업전선. 신입 S/W 개발자를 위한 이력서 쓰기 요며칠 어쩌다보니, 신입사원 공채 이력서를 내가 검토하는 위치에 올라서고 말았다.이력서를 보면서 느껴지는 내용과 조언을 좀 적어보련다.(내 개인생각이므로, 이게 정답은 아니다. 알아서 하시라.)이 글은 얼마간은 전체적인 취업 시장에, 일부는 특정 소프트웨어 개발자 취업에 소용되는 이야기니까 알아서 읽으삼. (그리고, 중소기업 대상 이야기다.) 먼저, 이력서에 항상 나오는 상투적인 이야기부터 정리하자.1. 이력서에 먼놈의 어린 시절 이야기는 그렇게 많냐?나는 어디서 태어나서 부모님과 행복하게 (또는 어렵게) 살아왔으며, 어찌어찌하여 대학교를 진학하게 되었습니다. 그러다가 군대도 다녀왔지요.이런 이야기 누가 읽을까? 신입사원 이력서를 보면 거의 100% 이렇게 시작한다. 성장배경이라는 타이틀하에. 그게 그렇.. 더보기
CString to char 출처 : http://lowchen.tistory.com/288123456CString strTemp = "This is test.";char szTemp[256] = {0}; memcpy( szTemp, strTemp, strTemp.GetLength() ); memcpy( szTemp, strTemp.GetBuffer(0), strTemp.GetLength() );cs 위의 두 memcpy는 같은 동작을 수행한다. 더보기
[winapi] DC에 대해서...(GetDC / BeginPaint) ### DC (Device Context) ### ** DC란?cairo로 windows에 그림을 그릴때도 Windows DC가 필요하다.때문에 WinAPI의 DC에 대해서 알 필요가 있다. # 기초부터 짚고 넘어가보자Windows는 3개의 DLL(동적 연결 라이브러리)로 구성되어 있다. - KERNEL : 메모리 관리 및 프로그램 실행 - USER : 유저 인터페이스와 윈도우 관리 - GDI : 화면 처리와 그래픽 담당 Windows API 함수 대부분은 이 세가지 DLL에 의해 제공되는 것이다. 즉, Windows의 클라이언트 영역에 그리기를 하려면 이 GDI(Graphics Device Interface) 함수를 사용해야 한다.그리고 HDC는 'Handle to a Device Context' 로 .. 더보기
timeSetEvent 64bit 오류 출처 : https://social.msdn.microsoft.com/Forums/vstudio/en-US/1d3f07b8-eb79-4127-a170-cbda5570b244/compilation-error-while-calling-timesetevent-during-64-bit-code-generation-using-vc-2008?forum=vclanguage 32bit에서 사용하던 timeSetEvent 함수가 64bit환경으로 버전업 할 경우 다음과 같은 에러가 발생한다. My problem is I am getting a compilation error message from a call to function timeSetEvent() like Error 1 error C2664: 'timeSetE.. 더보기
MFC app MANIFEST for x64 including x86 COMCTL32.dll 출처 : https://msdn.microsoft.com/en-us/library/bb773175(VS.85).aspx 인터넷에서 받은 소켓 통신하는 MFC 프로그램(32bit)을 실행하였더니 정상적으로 실행이 되었다. x64로 플랫폼을 변경 후 정상 빌드는 됐지만 0xc000007b라는 에러코드를 발생하며 런타임 에러를 뿜어냈다. 3일 동안 정말 많은 검색을 하였고 150개 정도의 웹 페이지를 보았다. 그 중 한 사이트에서 아래와 같은 메시지를 볼 수 있었다. 하지만 MFC를 많이 개발해보지 않은 나로써는 무슨 말인지 정확히 알지 못하였다. 메시지 대로 Dependency Walker도 이미 실행해봤지만 COMCTL32.dll만 x86으로 dll을 로드하고 있었다.설명Project not explici.. 더보기
MFC 프로젝트 속성 > 구성 속성 출처 : http://blog.naver.com/chollikyo/10166698586 일반 입력 디렉터리 : 링커와 같은 도구에서 빌드 프로세스 중에 만들어진 모든 최종 출력 파일을 배치할 디렉터리를 지정 중간 디렉터리 : 컴파일러와 같은 같은 도구에서 빌드 프로세스 중에 만들어진 모든 중간 파일을 배치할 디렉터리를 지정 대상 이름 : 이 프로젝트가 생성하는 파일 이름을 지정 매크로설명$(SolutionDir)솔루션의 디렉터리(드라이브+경로). 이 경로에는 뒤에 \를 붙여야 함.$(Configuration)현재 프로젝트 구성의 이름(예: "Debug")$(ProjectName)프로젝트의 기본 이름.$(RemoteMachine)디버그 속성 페이지에서 Remote Machine 속성의 값으로 설정.$(Pl.. 더보기
런타임 라이브러리 (Run-time Libraries) 2. 런타임 라이브러리 (Run-time Libraries) 이 테이블은 Visual C++ 과 함께 제공되는 라이브러리와 Pre-Compiled Object 들의 기능에 대한 짧은 설명을 보여줍니다. ------------------------------------------------------------------------------런타임 라이브러리 (Run-time Libraries)------------------------------------------------------------------------------ 파일설명 Advapi32.lib 레지스트리나 보안 관련 API 같은 진보된 API 서비스 들에 대한 임포트 라이브러리 입니다. 이 임포트 라이브러리와 링크하는 것은 당신의 프로.. 더보기