목록CLR (2)
Data Analysis for Investment & Control
많은 삽질을 통해 드디어 C++ C++/CLI C#을 연동하는 코드 테스트에 성공했다. 역시나 머리가 나쁘면 몸이 피곤하다. 썩 마음에 드는 방법은 아니고, 제한적이긴 하지만, known data typed 기반의 interface를 구현하는 것으로 연동이 가능할 듯 하다. 구현 순서는 아래와 같이 한다. 1. C++ dll 구현 : Regular DLL using shared MFC DLL 기반 2. C++/CLI 기반의 Wrapper Class 구현 : 여기서는 명시적 링크 방법을 사용 3. C# 프로젝트에서 C++/CLI dll을 추가시켜 사용 먼저, C++ DLL 구현이다. 1. C++ dll 구현 : Regular DLL using shared MFC DLL 기반 헤더에서 P3Base.h 파일을..
이전에는 MFC 기반의 응용프로그램을 만드는 프로젝트에서 사용했기 때문에 dll 생성을 확장 dll(extension dll)로 만들어 사용했었다. 그런데, C#에서 사용하려고 하니 이 방법으로는 할 수가 없게 되었다. 이의 해결 방법을 알아보던 중, CLI(Common Language Infrastructure)로 wrapping하는 방법이 있다는 걸 알게 되었다. 문제는 내가 확장 DLL만을 사용해봤기 때문에 기본 DLL을 생성해서 다른 프로젝트에 추가하는 방법을 모른다는 것이다. 게다가 C++ DLL을 사용하려는 타겟 프로젝트 환경이 MFC 기반이 아니기 때문에 어떻게 추가를 해줘야 하는지도 모르겠다. 먼저, 테스트를 위해 DLL 프로젝트를 하나 생성한다. DLL 빌드 옵션은 '공유 MFC DLL을..