다음을 통해 공유


혼합형(네이티브 및 관리) 어셈블리

혼합형 어셈블리에는 관리되지 않는 기계어 명령과 MSIL 명령이 모두 포함될 수 있습니다. 이렇게 하면 전혀 관리되지 않는 구성 요소와의 호환성을 유지한 채 이 어셈블리에서 .NET 구성 요소를 호출하거나 .NET 구성 요소에서 이 어셈블리를 호출할 수 있습니다. 혼합형 어셈블리를 사용하면 관리되는 기능과 관리되지 않는 기능이 함께 사용되는 응용 프로그램을 작성할 수 있습니다. 이러한 점에서 혼합형 어셈블리는 기존 Visual C++ 응용 프로그램을 .NET 플랫폼으로 마이그레이션하는 데 적합합니다.

예를 들어, /clr 컴파일러 스위치를 사용하여 모듈 하나를 컴파일하는 것만으로도 관리되지 않는 함수로만 구성된 기존 응용 프로그램을 .NET 플랫폼에서 사용할 수 있습니다. 이 모듈은 응용 프로그램의 나머지 부분과 계속 호환 상태를 유지하면서 .NET 기능을 사용할 수 있습니다. 이와 같이 점진적이고 단위적인 방식으로 응용 프로그램을 .NET 플랫폼에 맞도록 변환할 수 있습니다. 동일한 파일 내에서 각 함수별로 관리되는 컴파일 또는 관리되지 않는 컴파일을 선택할 수도 있습니다. managed, unmanaged를 참조하십시오.

Visual C++에서는 세 가지 형식의 관리되는 어셈블리(혼합형, 순수 및 확인 가능) 생성을 지원합니다. 마지막 두 가지 형식의 어셈블리에 대한 내용은 순수형 및 안정형 코드(C++/CLI)을 참조하십시오.

단원 내용

혼합형 어셈블리에 대한 자세한 코딩 지침을 보려면 https://msdn.microsoft.com/ko-kr/netframework/default.aspx?pull=/library/ko-kr/dndotnet/html/manunmancode.asp에서 MSDN 문서 "An Overview of Managed/Unmanaged Code Interoperability"를 참조하십시오.

참고 항목

기타 리소스

네이티브 및 .NET 상호 운용성