.NetCF 3.5 Updates

NETCF 3.5 Platform Builder updates are now available for the following OS versions:

Windows Embedded CE 6.0:
http://www.microsoft.com/downloads/details.aspx?FamilyID=a83124d5-7c8e-4abe-87fd-69654561be40&displaylang=en

Windows CE 5.0:
http://www.microsoft.com/downloads/details.aspx?FamilyID=98f0906a-45c6-4792-91fe-47a0e073a998&displaylang=en

http://support.microsoft.com/kb/947560

.NET Compact Framework 3.5

NETCF V 3.5 redistributable can be downloaded here.
FAQ:
Q: How do I install this on to my device? This file is too big and won’t fit on my device. I put it on to the storage card but device tells me it’s of unknown type. What to do?
A: This file is an installer for your desktop, not for your device. To install NETCF V3.5 please attach your device to your desktop via WMDC (or Active Sync 4.0 or above) and run installation on your desktop. Installer would then deploy NETCF V 3.5 on to the device. Manual installation would be required for devices without active sync support (e.g. most Windows CE devices).
Q: Which versions of the device OS are supported by NETCF 3.5?
A: Windows Mobile 2003 For Pocket PC (both first and second editions), Windows Mobile 5.0 (all flavors), Windows Mobile 6 (all flavors), Windows CE 4.2 (AKA Windows CE .Net), Windows CE 5.0, Windows Embedded CE 6. Windows CE is a customizable OS and must include NETCF V 3.5 dependencies in order to run NETCF V 3.5. Contact your device OEM to find out if particular OS has them.
Q: What is the size of NETCF V 3.5 on device? Can I install NETCF V 3.5 on to storage card to save space?
A: NETCF V3.5 needs about 6.5 MB of storage space (depends on the device). NETCF V3.5 can be installed on to the storage card. About 1.2 MB (depends on device) is required on the main storage for that configuration, rest would be located on the storage card.
Q: I have other versions of NETCF installed (or in ROM). Do I have to remove them in order to install NETCF V3.5?
A: There’s no need to uninstall previous versions as NETCF V3.5 is side by side with older version. However one might choose to uninstall previous versions in order to save storage space on devices. Note you cannot uninstall NETCF version which is located in ROM nor would it save any storage space (because ROM versions are located in ROM and not in the storage).
Q: After NETCF V3.5 is installed, will older application automatically use it?
A: No. Applications would use version of the NETCF they are initially compiled for if this version is available for maximum compatibility. If older version is not available on particular device then application will be promoted to NETCF V 3.5. It is also possible to configure particular application (or all applications) to use NETCF V3.5 automatically. NETCF V3.5 Power Toys includes utility which does that.
Q: What is the difference between localized versions of NETCF V3.5 installer? Can I mix and match languages between NETCF V3.5, device and Visual Studio 2008?
A: All localized versions of NETCF V3.5 installer have exactly the same set of files inside so you can mix and match languages as needed. Installer’s wizard is fully localized for your convenience.
Q: Can I develop for NETCF V 3.5 using VS 2003 or VS 2005?
A: No, VS 2008 Pro or above is needed to develop for NETCF V3.5. Command line development is also possible and requires the following components: .NET 3.5, .NET 3.5 SDK, NETCF V3.5 and NETCF V3.5 Power Toys. All these components are freely available.

Replication Errors

Customizing cabs for WM 5.0 deployment

I have always felt the need to customize my cab files so that they dont do things that is expected out of their normal behavior.
One such thing is to install using a cab to a predetermined folder and not letting it show in the add/remove list! This is helpful when you want to release hot fixes and you want to prevent deletion of your program dlls/database from the device when the update is made.

Using the following method, one can achieve this.

1) Create a setup project for mobile.
2) Build the project so that a setup.cab and setup.inf is emitted.
3) The main task is to edit this inf file and rebuild the cab using the command prompt.
The first few lines of the inf file look like this:
[Version]
Signature=”$Windows NT$”
Provider=”Company”
CESignature=”$Windows CE$”

[CEStrings]
AppName=”MyApp”
InstallDir=%CE1%\%AppName%
[Strings]
Manufacturer=”Company”

You now need to change ‘AppName’ to which ever folder or program name you would like to target on the device.
Once done, you need to use the cabwiz tool to emit the new cab.
>Cabwiz “pathToReleaseFolder/Setup.inf” /nouninstall

The cabwiz utility can be found in Microsoft Visual Studio 8\SmartDevices\SDK\SDKTools.