User Guide

541
About Microsoft .NET Technology
About Microsoft .NET Technology
Microsoft’s .NET platform is a family of products that provide tools for developing, server
infrastructure for managing, and building block services and client software for using
XML services. The .NET Framework, which is a .NET development tool, is an
environment for building, deploying, and running XML Web services. It consists of
several parts, including the common language runtime, which is the engine at the core
of managed code execution. Microsoft Visual Studio .NET is a development tool that
exploits the capabilities of the .NET Framework to build powerful Windows applications.
Wise for Windows Installer simplifies the process of creating installations for .NET
applications, automating the process by extracting most of the installation details from
your assemblies.
Windows Installer 2.0 or later only
The ability to create .NET installations is supported only by Windows Installer 2.0 or later.
Frequently Asked Questions About Microsoft .NET
This section covers important concepts you should understand before you use Wise for
Windows Installer to build .NET installations.
What does the common language runtime do?
The common language runtime manages the execution of code and provides services
such as cross-language integration, code access security, object lifetime management,
and debugging and profiling support. Search for “Common Language Runtime” in the
MSDN Library (msdn.microsoft.com/library/).
What’s the difference between managed and unmanaged code?
Code developed with a language compiler that targets the common language runtime is
called managed code. All code based on Microsoft intermediate language (MSIL)
executes as managed code. Managed code is self-describing; it contains metadata that
describes every element managed by the common language runtime. The runtime uses
the metadata to provide services.
Code that runs outside the runtime and does not contain metadata is called unmanaged
code. Examples of unmanaged code are COM components, ActiveX interfaces, and
Win32 API functions. Unmanaged code executes in the common language runtime
environment with minimal services.
Can I add managed code to an existing application?
Few developers are able to rewrite existing applications completely as managed (.NET)
code. Instead, you can combine managed and unmanaged components in one
installation. Code that contains a mix of managed and unmanaged elements is called
interoperable code.
The common language runtime supports COM interoperability (interop). For backward
compatibility, COM interop provides access to existing COM components without
requiring you to modify the original components. COM interop also enables your COM
clients to access managed code as easily as they access other COM objects. This is
accomplished by adding information to the system registry so .NET components are
called as though they were COM components. At runtime, the common language
runtime marshals data between COM objects and managed objects as needed.