The Microsoft .NET Compact Framework (.NET CF) was a version of the
.NET Framework that is designed to run on resource constrained mobile/embedded devices such as
personal digital assistant
A personal digital assistant (PDA) is a multi-purpose mobile device which functions as a personal information manager. Following a boom in the 1990s and 2000s, PDAs were mostly displaced by the widespread adoption of more highly capable smar ...
s (PDAs),
mobile phone
A mobile phone or cell phone is a portable telephone that allows users to make and receive calls over a radio frequency link while moving within a designated telephone service area, unlike fixed-location phones ( landline phones). This rad ...
s, factory controllers,
set-top box
A set-top box (STB), also known as a cable converter box, cable box, receiver, or simply box, and historically television decoder or a converter, is an information appliance device that generally contains a Tuner (radio)#Television, TV tuner inpu ...
es, etc. The .NET Compact Framework uses some of the same class libraries as the full .NET Framework and also a few libraries designed specifically for mobile devices such as
.NET Compact Framework controls. However, the libraries are not exact copies of the .NET Framework; they are scaled down to use less space.
Development
It is possible to develop
applications
Application may refer to:
Mathematics and computing
* Application software, computer software designed to help the user to perform specific tasks
** Application layer, an abstraction layer that specifies protocols and interface methods used in a ...
that use the .NET Compact Framework in
Visual Studio .NET 2003
Visual Studio is an integrated development environment (IDE) developed by Microsoft. It is used to develop computer programs including websites, web apps, web services and mobile apps. Visual Studio uses Microsoft software development platforms ...
, in
Visual Studio 2005
Visual Studio is an integrated development environment (IDE) developed by Microsoft. It is used to develop computer programs including web site, websites, web apps, web services and mobile apps. Visual Studio uses Microsoft software development ...
and in
Visual Studio 2008
Visual Studio is an integrated development environment (IDE) developed by Microsoft. It is used to develop computer programs including web site, websites, web apps, web services and mobile apps. Visual Studio uses Microsoft software development ...
, in
C# or
Visual Basic .NET
Visual Basic (VB), originally called Visual Basic .NET (VB.NET), is a multi-paradigm, object-oriented programming language developed by Microsoft and implemented on .NET, Mono, and the .NET Framework. Microsoft launched VB.NET in 2002 as the ...
. Applications developed with
Basic4ppc
Basic4ppc (pronounced "Basic for PPC") is a programming language originally for Pocket PC handheld computers running Windows Mobile operating system, by Anywhere Software. Since 2014, B4x ("B for x") was renamed, and currently, 2023, supports mu ...
are also eventually compiled for the .NET CF. The resulting applications are designed to run on a special, mobile-device, high performance
JIT compiler
In computing, just-in-time (JIT) compilation (also dynamic translation or run-time compilations) is compiler, compilation (of Source code, computer code) during execution of a program (at run time (program lifecycle phase), run time) rather than b ...
.
The Microsoft .NET Compact Framework 3.5 Redistributable contains the common language runtime and class libraries built for the .NET Compact Framework. In addition to version 3.5 support, it also supports applications developed for version 1.0 and 2.0. The .NET Compact Framework 3.5 provides new features such as Windows Communication Foundation, LINQ, SoundPlayer, new runtime tool support, and many other features.
The UI development is based on
Windows Forms
Windows Forms, also known as WinForms, is a free, open-source graphical user interface (GUI) class library for building Windows desktop applications, included as a part of Microsoft .NET, .NET Framework or Mono, providing a platform to write c ...
which is also available on the desktop version of the .NET Framework. User interfaces can easily be created with Visual Studio by placing
.NET Compact Framework controls like buttons, text boxes, etc. on the forms. Also features like data binding are available for the .NET CF. A major disadvantage of the UI development is that modern looking applications with support for finger-based touch screen interaction are not that easy to implement. This is mainly due to the desktop-oriented user interface concept on which Windows Forms is based, although some third party libraries with custom controls for this purpose are available.
Deployment
To be able to run applications powered by the .NET Compact Framework, the platform must support the Microsoft .NET Compact Framework runtime. Some
operating system
An operating system (OS) is system software that manages computer hardware and software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ...
s which do include .NET CF are Windows CE 4.1, Microsoft
Pocket PC
A Pocket PC (P/PC, PPC) is a class of personal digital assistant (PDA) that runs the Windows Mobile operating system, which is based on Windows Embedded Compact, Windows CE/Windows Embedded Compact, and that has some of the abilities of modern ...
, Microsoft Pocket PC 2002, Smartphone 2003, and Symbian v3. .NET Compact Framework applications can be run on desktop computers with the full .NET Framework as long as they only access the shared parts of both frameworks, though their user interface cannot be upgraded to look like that of an application developed for desktop PCs.
A version of the .NET Compact Framework is also available for the
Xbox 360
The Xbox 360 is a home video game console developed by Microsoft. As the successor to the Xbox (console), original Xbox, it is the second console in the Xbox#Consoles, Xbox series. It was officially unveiled on MTV on May 12, 2005, with detail ...
console. While it features the same runtime as the regular .NET CF, only a subset of the class library is available.
This version is used by
XNA Framework to run
managed games on the console. There are other limitations as well, such as the number of threads being limited to 256.
Unlike other versions of .NET CF, the Xbox 360 version allows setting
processor affinity
In computer science, processor affinity, also called CPU pinning or cache affinity, enables the binding and unbinding of a process or a thread to a central processing unit (CPU) or a range of CPUs, so that the process or thread will execute only ...
to threads created.
The threads are scheduled among four concurrent threads running on the multiple processor cores of the system.
Release history
See also
*
.NET Compact Framework controls
*
.NET Framework
*
.NET Micro Framework
*
Windows CE
Windows CE, later known as Windows Embedded CE and Windows Embedded Compact, is a discontinued operating system developed by Microsoft for mobile and embedded devices. It was part of the Windows Embedded family and served as the software foun ...
*
Windows Mobile
Windows Mobile is a discontinued mobile operating system developed by Microsoft for smartphones and personal digital assistants (PDA). Designed to be the portable equivalent of the Windows desktop OS in the emerging Mobile device, mobile/port ...
References
External links
.NET Compact Framework
{{DEFAULTSORT:.Net Compact Framework
Compact Framework
Windows CE
Windows Mobile
2002 software