2012-10-03 1 views
2

다른 프로그래밍 언어에서 사용할 수 있도록 함수를 내보내는 방법을 알고 싶습니다.C# 함수를 관리되지 않는 환경에서 호출 할 수 있도록 내보내는 방법은 무엇입니까?

관리되지 않는 프로그래밍 언어로 dll 함수를 사용하고 싶습니다.

어떻게해야합니까?

+2

C#을 실행하려면 .NET Framework가 필요합니다. – elyashiv

+0

Ofc .NET Framework가 필요하므로 C#을 사용하여 코드를 만들 수 있지만 C++와 같은 함수를 내보내는 방법을 알아야합니다. – Johnnie

+0

간단히 말해서 .NET Framework를 초기화 한 다음 리플렉션을 사용하여 호출해야합니다. –

답변

2

당신은 당신의 .NET에 대한 /tlb 명령으로 regasm.exe을 실행해야합니다 그런 다음 C++에서 출력 유형 라이브러리 (tlb)를 참조하십시오.

전에 여러 번 해봤지만 특히 배포 할 때 고통 스러울 수 있습니다. /codebase 스위치를 사용하는 것이 좋습니다. 스위치는 COM 어셈블리에서 클래스가 COM 컨텍스트에서 인스턴스화 될 때 .NET 어셈블리를 찾을 위치를 알려줍니다. 따라서 레지스트리에서 쉽게 찾을 수 있고 필요에 따라 트위 킹 할 수 있습니다.

관련 문제