♣ 개발/C# 2

C#에서 C++ API 사용1 ( 함수 마샬링 )

C/C++ API를 C#에서 사용하기 위해 고려해주어야 할 것이 마샬링(marshaling)입니다. 마샬링이란 이기종간의 통신을 위해서 서로간의 형식을 맞춰주는 것을 의미하는데, 이것은 C#에서의 데이터 타입과 C++에서의 데이터 타입이 일치하지 않는 문제(그 외 등등)를 해결하기 위해, C/C++ 메서드 및 클래스의 데이터 타입 변환 또는 동적 메모리 할당을 위한 memory class 생성 등의 일련의 과정을 말합니다. 필요한 함수만을 사용하기 위한 함수 마샬링, 구조체 마샬링과 클래스 전체를 사용하기 위한 클래스 마샬링으로 나누어 설명할 예정입니다. 이번에는 함수 마샬링에 대해 알아보겠습니다. 함수 마샬링의 경우 DllImport를 사용하여 원하는 함수를 가져와 사용하는 방법으로 데이터 타입을 C#..

♣ 개발/C# 2016.07.18

managed dll 생성 : C++/CLI 이용

출처 http://six605.tistory.com/384 C/C++ 코드를 .net환경에서 사용하기 위한 방법중 한가지는 wrapper class를 통한 방법이다. * Managed DLL 만들기 C#에서 native code를 이용하기 위해선 Managed DLL을 생성해야 한다. native code를 컴파일하여 생성한 Library파일을 이용하거나 소스코드를 이용하여 Managed DLL을 생성 할 수 있다. 방법1) 'Native source code의 Library'를 사용하는 경우 1. Native code -> Lib 생성 새 프로잭트 만들기 -> C++ -> Win32 -> Win32콘솔 응용 프로그램 선택 응용프로그램 종류 : 정적라이브러리 위의 코드를 컴파일하면 UnmanagedCal..

♣ 개발/C# 2015.08.10
반응형