.NET Compact Framework

From Wikipedia, the free encyclopedia
Jump to: navigation, search

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[edit]

It is possible to develop applications that 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 Windows Forms is based, although some third party libraries with custom controls for this purpose are available.

Deployment[edit]

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 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 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[edit]

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[edit]

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.9040.0 2009 February 8[13][14]
3.5 3.5.9198.0 2009 July 20[15]
3.5 3.5.10181.0 2010 June 29[16] (with WinCE QFE, June 2010)
3.5 3.5.11125.0 2011 June 15[17] (with WinCE QFE, May 2011)
3.7 3.7.0.0 8 June 2009 18:38
3.7 3.7.8345.0 2009
3.9 unknown June 2013[18][19]

See also[edit]

References[edit]

  1. ^ ".NET Compact Framework for Xbox 360". TechNet. Archived from the original on 9 June 2007. Retrieved 2007-06-21. 
  2. ^ a b "Thread Pools in the .NET Compact Framework for Xbox 360". TechNet. Archived from the original on 2012-03-21. Retrieved 2007-06-21. 
  3. ^ "Additions to the .NET Compact Framework for Xbox 360". TechNet. Archived from the original on 2012-03-22. Retrieved 2007-06-21. 
  4. ^ "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. 
  5. ^ "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. 
  6. ^ ".NET Compact Framework Nears Release". Archived from the original on 2012-03-21. Retrieved 2007-12-06. 
  7. ^ ".NET Compact Framework releases 1.0 SP3". Archived from the original on 9 December 2007. Retrieved 2007-12-06. 
  8. ^ "Microsoft releases .NET CF 2.0 redistributable". Archived from the original on 2012-03-21. Retrieved 2007-12-06. 
  9. ^ ".NET Compact Framework v2.0 SP1 is done and is being released.". Archived from the original on 17 December 2007. Retrieved 2007-12-06. 
  10. ^ ".NET Compact Framework 2.0 SP2 Released". Archived from the original on 19 December 2007. Retrieved 2007-12-06. 
  11. ^ ".NET Compact Framework 3.5 Beta1 Redistributable". Archived from the original on 13 December 2007. Retrieved 2007-12-06. 
  12. ^ ".NET Compact Framework 3.5 Redistributable". Archived from the original on 2012-03-21. Retrieved 2008-05-05. 
  13. ^ "FIX: A System.Net.WebException occurs when you run an application to send HTTPS Web requests to a server in an embedded device". Retrieved 2013-10-31. 
  14. ^ "Why .NET Compact Framework fails to call some HTTPS web servers". Retrieved 2013-10-31. 
  15. ^ "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. 
  16. ^ "PROBLEM: An application may crash when you try to open the View GC Heap window in the Remote Performance Monitor on a device that is running the .NET Compact Framework 3.5". Archived from the original on 17 November 2010. Retrieved 2010-06-29. 
  17. ^ "FIX: Performance issues may occur when the ClassDesc classFlags member is accessed in a function in the .NET Compact Framework 3.5 in Windows Embedded CE 6.0 R3". Retrieved 2014-06-27. 
  18. ^ Microsoft announces general availability of Windows Embedded Compact 2013
  19. ^ "Introducing NETCF 3.9 in Windows Embedded Compact 2013 – a faster, leaner and multi-core runtime!". Retrieved 2012-11-30. 

External links[edit]