A subset of the MicrosoftDotNet Framework that is designed to run on PocketPc and other WinCe and WindowsMobile devices. Missing several features of the full .NET Framework, such as: * AspDotNet * WebServices (can't implement a service, but can invoke Web Service methods as a client) * DotNetRemoting * 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 2003. 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 (RCW), XpathLanguage 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 ---- '''Resources''' See development experience paper by KyleCordes at http://kylecordes.com/story-268-cf-wireless-sig.html ---- 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 139.76.128.71 * 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. ---- '''JavaPlatform connectivity''' 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 ---- See also * NcfUnit * SoManyFrameworks ---- CategoryDotNet