2019. 3. 19. 10:34

LINK : fatal error LNK1123: COFF로 변환하는 동안 오류가 발생했습니다. 파일이 잘못되었거나 손상되었습니다.


이런 글자가 나올 때 다음과 같이 해결하면 된다


원인 : 두 개 이상 다른 버전의 Visual Studio를 설치했기 때문


cvtres.exe 파일의 중복 존재


해결 방법 : 


C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin


C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64


위의 두 군데에 cvtres.exe 파일이 존재하는데 첫 번째 경로에 있는 cvtres.exe 파일을 다른 이름으로 변경하던지 삭제한다



2019. 3. 18. 10:41

도구 - 옵션 - 환경 - 키보드 - Visual C++ 6 로 설정

2019. 1. 23. 21:38

경로를 저장할 때 텍스트에서 \\를 \로 인식한다 


따라서 XML에 저장할 때 \로 저장한다


다시 로딩할 때 \\가 되어 있어야 하는데


\를 읽어들이기 때문에 파싱을 실패하여 로딩이 제대로 되지 않는다




* 해결 방법


- 저장할 때 \\ 를 \\\\로 변경하여 저장한다

2018. 12. 18. 16:20

함수 포인터는 많이 올라와 있지만


클래스 메서드 포인터를 파라미터로 사용하는 방법은 많이 없어서 


내가 자주 사용하기 위해 올린다



클래스 헤더 파일





클래스 소스 파일






실제 사용 파일



2018. 12. 4. 18:14

boost 파일을 다운 받아 압축을 푼다



bootstrap.bat 파일을 더블 클릭하여 실행하면 b2.exe 가 생성된다



커맨드 창을 띄운 뒤 b2.exe가 있는 경로로 이동한다



b2 명령어를 입력한다



b2 옵션


1.  link : static - static 빌드(.lib)     shared - dynamic 빌드 (.dll)


2.  address-model : 32 - 32 비트      64  - 64 비트


3.  variant : debug - debug 빌드      release - release 빌드


4.  toolset : msvc-10.0   (VS2010)      msvc-14.0  (VS2015)


5.  threading : single      multi


6.  runtime-link : static - MT 빌드       shared - MD 빌드



현재의 프로젝트 속성에 맞추어서 6개의 속성을 옵션으로 추가해 빌드하면 된다



* b2 명령 예제



1. VS2010 32 비트 static debug MT 빌드



b2 --toolset=msvc-10.0 --variant=debug --address-model=32 --link=static --threading=multi --runtime-link=static



결과물 - libboost_chrono-vc100-mt-1_58.lib



2. VS2015 64비트 shared(dll) release MD 빌드



b2 --toolset=msvc-14.0 --variant=release --address-model=64 --link=shared --threading=multi --runtime-link=shared



결과물 - boost_chrono-vc100-mt-1_58.lib