views:

63

answers:

2

I have been developing in .NET for quite some time now, but now I have customer who wants me to develop an application for them in .NET for Windows CE.

I have done some embedded system programming in C before, but never in .NET.

What tips or tricks would make my life easier when taking this assignment? What pitfalls should I watch out for?

+2  A: 

It is a very mature development platform, you won't have many problems. Maybe a little too mature, you'll need Visual Studio 2008. All support for mobile dev has been removed from VS2010. The future of Windows Mobile is cloudy with a chance of meatballs. About the size of an apple.

You'll need to invest time in learning to program in C#, that will be worthy in the long run. It is a strongly object-oriented programming language, that could be a bit raw if you only ever have programmed in C before. Avoid comparing the Compact Framework to the full .NET framework, it is a very trimmed version to meet the resource demands of embedded devices. Getting exposure to .NET programming is useful in the long run, especially when you can do it on the customer's dime.

Hans Passant
+1  A: 

The biggest problem I have had with Windows Mobile development and compact framework is probably the difference in screen resolution among all the different devices.
If you´r going to make nice locking UI´s you have to handle a lot of resizing, and reordering controls.
Handling SIP(on screen keyboard) and landscape/portrait.

There are a lot of third party controls to handle this kind of problems, some free and some for money.

Edit

Here are some resources that might be useful:

Free or Open source
Fluid - Windows Mobile .NET Touch Controls
Composite UI Framework for Windows Mobile
UI Framework for .NET Compact Framework 3.5
AlphaMobileControls

Closed or pay for
Windows Mobile Controls — Resco MobileForms Toolkit
OpenNETCF Consulting have a lot of native API wrappers among other things.

Jens Granlund
One thing to note is that you refer repeatedly to Windows Mobile when the question is about Windows CE. Usually an application written to Windows CE is targeted at a very low range of devices if not just one so many of the problems do not exist. Still keeping resolution in mind is important.
Shaihi
@Shaihi, my bad, that´s because all the wince I do now days is windows mobile. I haven´t done anything for wince, that is not also windows mobile since the 90's.
Jens Granlund