A subset of the MicrosoftDotNet
Framework that is designed to run on PocketPc
and other WinCe
Missing several features of the full .NET Framework, such as:
- WebServices (can't implement a service, but can invoke Web Service methods as a client)
- application domains
- ComInterOp (but P/Invoke can be used as a workaround)
- System.Data.OleDb? namespace not supported by ADO.NET :)
- System.Reflection.Emit namespace not supported
- asynchronous delegates
- security differences
- general serialization is not supported, but objects can be serialized for transmitting object data using SOAP in WebServices and serializing datasets to XML.
- WindowsForms are supported, but are somewhat different from desktop
- XML schema validations and XPath queries are not supported
Compact Framework (CF) apps can currently only be developed using VisualStudioDotNet
To fill the "gaps" between the Full Framework and the Compact Framework, see the work done by OpenNETCF.org (http://www.opennetcf.org
), especially the Smart Device Framework.
Version 2 due ?mid 2005
It is getting closer to the desktop version, including new features such as new browser control, datetime picker control, MSMQ, ComInterOp
support, Xml Serialization to CeeSharpLanguage
, serial port support, generics, etc.
There is supposedly an SDK so 3rd tools can be hooked up.
Baseline requirements include VisualStudioWhidbey
, and PocketPc
2003. Note the "Express editions" will not support DotNetCompactFramework
MS FAQ at http://msdn.microsoft.com/smartclient/community/cffaq/cf20.aspx#db0x170k
Mar04 Chat transcript at http://msdn.microsoft.com/chats/transcripts/mobileembedded/embedded_031104.aspx
A May05 article on development tools is available at http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnppcgen/html/devtoolsmobileapps.asp
What about SmartPhone support? How is that different from WindowsMobile
Also confused with the Opennetcf.org activities by people like Neil Cowburn, who complained about lack of ManagedCeePlusPlus
on the compact platform. Are these people working on "flash-in-the-pan" solutions?
Future directions (not in V2)
WS-* support, sensitivity to transient networks with different bandwidths
Comments on workaround needed, without ServiceOrientedArchitecture
support in V2 at http://blog.opennetcf.org/ayakhnin/PermaLink.aspx?guid=65e8102c-c1ab-4639-acd2-5bc32415bac9
See development experience paper by KyleCordes
When I took training classes on the Compact Framework, it was mainly a week spent listing all the things it can't do and workarounds for them. It's pretty minimal, and there is very little optimization done. An especially egregious offender is the Image class. by 18.104.22.168
- I have read that a "killer app" on that platform is probably some kind of script based appln. Even if the worlds best development environment were available, the results would be limited by the small form factor (-> bandwidth) of the screen.
It appears one (only alternative is the elusive WebServices
) option exists if there is a JavaPlatform
server using RMI needs to be connected, and it requires a commercial product called MinCor?
, using a CorbaComponentModel
based interface. See Dec04 article at http://dotnet.sys-con.com/read/47342_p.htm
The above method will work with a JavaTwoEnterpriseEdition
server, see example at http://www.middsol.com/MinCor/DemoJ2EE/Hello/Hello.html