.NET Compact Framework
The Microsoft .NET Compact Framework (.NET CF) is a version of the .NET Framework that is designed to run on resource constrained mobile/embedded devices such as personal digital assistants (PDAs), mobile phones, factory controllers, set-top boxes, 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 which use the .NET Compact Framework in Visual Studio .NET 2003, in Visual Studio 2005 and in Visual Studio 2008, in C# or Visual Basic .NET. Applications developed with Basic4ppc are also eventually compiled for the .NET CF. The resulting applications are designed to run on a special, mobile-device, high performance JIT compiler.
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 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 WinForms 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 systems which do include .NET CF are Windows CE 4.1, Microsoft Pocket PC, 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 can not 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 console. While it features the same runtime as the regular .NET CF, only a subset of the class library is available.[1] 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.[2] Unlike other versions of .NET CF, the Xbox 360 version allows setting processor affinity to threads created.[3] The threads are scheduled among four concurrent threads running on the multiple processor cores of the system.[2]
Extended backward compatibility
A port of .NET CF 1.0 SP3 that supports Windows CE versions 2.0, 2.01, and 2.11 has been developed by an open-source software developer named D. Stefanov.[4] Users of legacy Windows CE devices such as handheld PCs and palm-size PCs may now run applications written for the .NET Compact Framework 1.0 on such devices.[5] Support is available for ARM, MIPS, x86, and Hitachi SuperH (SH3, SH4) processors.
Release history
Version name | Version number | Release date |
---|---|---|
1.0 RTM | 1.0.2268.0 | 2002 late[6] |
1.0 SP1 | 1.0.3111.0 | 2003 |
1.0 SP2 | 1.0.3316.0 | unknown |
1.0 SP3 | 1.0.4292.0 | 2005 January[7] |
2.0 RTM | 2.0.5238.0 | 2005 October[8] |
2.0 SP1 | 2.0.6129.0 | 2006 June[9] |
2.0 SP2 | 2.0.7045.0 | 2007 March[10] |
3.5 Beta 1 | 3.5.7066.0 | 2007 May[11] |
3.5 Beta 2 | 3.5.7121.0 | unknown |
3.5 RTM | 3.5.7283.0 | 2007 November 19 |
3.5 | 3.5.7283.0 | 2008 January 25[12] |
3.5 | 3.5.9198.0 | 2009 July 20[13] |
3.5 | 3.5.10181.0 | unknown (with WinCE QFE, July 2010) |
3.5 | 3.5.11125.0 | unknown (with WinCE QFE, May 2011) |
3.7 | 3.7.8345.0 | 08/06/2009 18:38 |
The versions of the .NET Compact Framework installed on a Windows Mobile device can be determined by launching \Windows\cgacutil.exe and comparing the displayed list of version numbers to the table above. More than one version can be installed on a device simultaneously.
See also
References
- ^ ".NET Compact Framework for Xbox 360". TechNet. Archived from the original on 09 June 2007. Retrieved 2007-06-21.
{{cite web}}
: Check date values in:|archivedate=
(help) - ^ a b "Thread Pools in the .NET Compact Framework for Xbox 360". TechNet. Retrieved 2007-06-21.
- ^ "Additions to the .NET Compact Framework for Xbox 360". TechNet. Retrieved 2007-06-21.
- ^ "Run Microsoft .NET Compact Framework 1.0/SP3 on Windows CE 2.00/2.11". CodePlex. Archived from the original on 14 June 2009. Retrieved 2009-03-29.
- ^ "NET CF 1.0 successfully ported to CE 2.xx; will .NET CF 2.0 be next?". HPC:Factor. Archived from the original on 31 May 2009. Retrieved 2009-05-25.
- ^ ".NET Compact Framework Nears Release". Retrieved 2007-12-06.
- ^ ".NET Compact Framework releases 1.0 SP3". Archived from the original on 09 December 2007. Retrieved 2007-12-06.
{{cite web}}
: Check date values in:|archivedate=
(help) - ^ "Microsoft releases .NET CF 2.0 redistributable". Retrieved 2007-12-06.
- ^ ".NET Compact Framework v2.0 SP1 is done and is being released". Archived from the original on 17 December 2007. Retrieved 2007-12-06.
- ^ ".NET Compact Framework 2.0 SP2 Released". Archived from the original on 19 December 2007. Retrieved 2007-12-06.
- ^ ".NET Compact Framework 3.5 Beta1 Redistributable". Archived from the original on 13 December 2007. Retrieved 2007-12-06.
- ^ ".NET Compact Framework 3.5 Redistributable". Retrieved 2008-05-05.
- ^ "FIX: You cannot scroll through a Web page or visit a link by using a .NET Compact Framework 3.5-based application that hosts a WebBrowser control in Windows Mobile 6.1.4 or in Windows Mobile 6.5". Archived from the original on 17 January 2010. Retrieved 2010-01-30.