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).

In This Section

C# Language Specification

For more information, see the C# Language Specification. The language specification is the definitive source for C# syntax and usage.

See Also

Tasks

Walkthrough: Office Programming (C# and Visual Basic)

Reference

Marshal.ReleaseComObject

Concepts

C# Programming Guide

Other Resources

Interoperating with Unmanaged Code

Interoperability in the .NET Compact Framework