Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

Interoperability (C# Programming Guide)

Interoperability enables you to preserve and take advantage of existing investments in unmanaged code. Code that runs under the control of the common language runtime (CLR) is called managed code, and code that runs outside the CLR is called unmanaged code. COM, COM+, C++ components, ActiveX components, and Microsoft Win32 API are examples of unmanaged code.

The .NET Framework enables interoperability with unmanaged code through platform invoke services, the System.Runtime.InteropServices namespace, C++ interoperability, and COM interoperability (COM interop).

Interoperability Overview (C# Programming Guide)

Describes methods to interoperate between C# managed code and unmanaged code.

How to: Use Platform Invoke to Play a Wave File (C# Programming Guide)

Describes how to use platform invoke services to play a .wav sound file on the Windows operating system.

Example COM Class (C# Programming Guide)

Demonstrates how to expose a C# class as a COM object.

For more information, see the following sections in the C# Language Specification:

  • 10.6.7 External methods

  • 17.5 Attributes for Interoperation

  • 18.9 Dynamic memory allocation

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

Show:
© 2014 Microsoft