Silverlight & Windows Embedded CE 6.0 R3: ein Traumpaar!

Beitrag von Frank Prengel

love Jetzt wächst zusammen, was zusammen gehört! Designer und Embedded-Entwickler werden ihre Zuneigung füreinander entdecken und gemeinsam ganz neue Devices mit faszinierenden UIs schaffen!

Auf der ESC in Boston wurde kürzlich die neue OS-Version Windows Embedded CE 6.0 R3 vorgestellt, welche unser erfolgreiches Echtzeit-OS mit neuen Features fit für neue Aufgaben macht. Während sich am Kernel und den Tools (wie immer bei einem R#-Release) nichts ändert, gibt es eine Reihe hochinteressanter neuer Features, zu denen bspw. zählen:

  • Internet Explorer Embedded: mit anpaßbarem UI, neuer Rendering Engine, Pan & Zoom und Flash Lite-Unterstützung
  • Touch & Gesture: Unterstützung für (Ein-)Fingergesten
  • Connection Manager: endlich ist diese von Windows Mobile bekannte und unter CE häufig vermisste Technologie zum automatischen Umgang mit diversen Netzwerkverbindungen auch verfügbar
  • Microsoft Office- & PDF-Viewer: Dateibetrachter für Word, PowerPoint, Excel und PDF sind wieder da

Die vielleicht wichtigste neue Komponente jedoch ist … Trommelwirbel …

Silverlight for Windows Embedded !

“Häh?!” höre ich da jemanden fragen. Also: Das Problem, schön anzusehende und gut zu bedienende Oberflächen für CE-basierte Geräte zu entwickeln, war für viele Anwender schon immer ein großes. (GDI oder Windows Forms sind dafür ja nur mäßig gut geeignet.) Meist wurde auf 3rd-Party-Frameworks zurückgegriffen, die mehr oder weniger gut funktionierten, oder es wurden eigene Frameworks auf Basis bspw. von OpenGL entwickelt (wenn man sich das leisten konnte). Mit der Einführung von WPF im .NET Framework 3.0 kam naturgemäß sofort die Frage auf: “Warum nicht auch für CE? Wenn nicht jetzt, dann wann?” WPF ist aber leider einfach zu mächtig für CE.

In der Zwischenzeit erobert eine ähnliche Microsoft-Technologie die RIA-Welt, nämlich Silverlight. Prinzipiell besser geeignet (kleiner Footprint), aber .NET-basiert und damit den Anforderungen im Embedded-Bereich nach Performance nicht unbedingt gewachsen.

Device UI

Deshalb wurde, speziell für die Embedded-Kunden, eben Silverlight for Windows Embedded entwickelt. Es beinhaltet das aus Silverlight 2 bekannte und beliebte XAML-Markup (minus einiger Features wie Data Bindung), aber das Rendering wird von einer nativen Engine erledigt, und die Programmierung geschieht in nativem C/C++ über COM Interfaces (!). (Wer jetzt “igitt!” ruft, beweist, dass er kein Embedded-Entwickler ist ;-) Es können damit einzelne Anwendungen wie auch komplette Shell-Implementierungen für Consumer- und Business-Geräte vorgenommen werden. Also tatsächlich das Beste aus zwei Welten: die Design-Expertise der Expression Blend-Profis und das Embedded-Know-How der Gerätehersteller.

sl4we

Auf der offiziellen Silverlight for Windows Embedded-Website gibt es einige empfehlenswerte Videos zum Thema. Auch die Blogeinträge meiner Kollegen Mike Hall (hier, hier) und Olivier Bloch (hier) enthalten Wissenswertes dazu.