본문 바로가기

김탱 개발자/윈도우프로그래밍

(12)
spreadsheet activex control https://www.microsoft.com/ko-KR/download/details.aspx?id=22276
컴파일 옵션 (/MT /MD 등등) opencv 라이브러리와 다른 라이브러리 2개를 같이 사용하는 DLL을 만들게 되었는데 DLL제작하는 프로젝트와 DLL 을 테스트하는 프로젝트에서 모두 "~정의가 이미 되었습니다" 라는 에러를 발생하였다.찾아보았더니, 링크버전이 다를 경우 이런 에러가 발생하게 되었고 모든 프로젝트의 컴파일 옵션을 /MT로변경하였더니 잘 작동이 되었다.DLL 을 만드는것이기 때문에 당연히 /MD로 컴파일을 하려고했으나 외부 라이브러리가 /MT 로 제작된것이라면 이런 에러가 발생한다. 따라서 하나로 통일하는것이 중요하다.또한 굳이 /MD로 컴파일 안하더라도 DLL 제작에 문제는 없다. 추가적으로, 프로그램와 라이브러리가 런타입 옵션이 다른 경우에 정상적으로 빌드가 되는 경우가 있는데,그냥 사용할 경우 사용 도중 프로그램이 ..
DLL 제작 1.1Basis 1.1.1Features내부적으로 C++ 클래스를 사용할 수 있고, C 함수 Wrapper만을 Export 할 수 있다. 따라서 내부적인 C++ Class에 대한 변경은 DLL의 호출에 영향을 주지 않는다.MFC를 사용할 수 없으며, 별도의 MFC Library가 필요없다.DLL을 사용하는 Client는 DLL 호출을 지원하는 어떠한 Language로 작성될 수 있다.AppWizard를 이용하여 자동으로 Project를 생성할 수 있다. 1.1.2 Function ExportDLL 내에서 정의된 Function을 export하기 위해서는 “__declspec(dllexport)” 를 사용한다. “__declspec”은 MS만의 C, C++의 확장된 syntax로서, 확장된 storage-..
GDI+ 사용법 (링크) http://blog.naver.com/najira00/60058229279