.NET CF 2.0 SP 2 erschienen
Gestern ist das SP2 vom .NET Compact Framework 2.0 erschienen, welches viele kleinere aber doch nervende Bugs behebt. Es kann hier bezogen werden, wo u.a. auch die Bugfixes aufgezählt sind.
Wissenswertes über Windows Mobile, und mehr...
Gestern ist das SP2 vom .NET Compact Framework 2.0 erschienen, welches viele kleinere aber doch nervende Bugs behebt. Es kann hier bezogen werden, wo u.a. auch die Bugfixes aufgezählt sind.
Eingestellt von
Peter Nowak
um
10:53
Labels: CF, Software und Bibliotheken
Wenn man mit Geräten arbeitet, dessen Speicher begrenzt ist, achtet man auf jedes Byte. Das eine oder andere lässt sich mittels Komprimierung sparen.
Für diesen Zweck gibt es nun auch eine Bibliothek, mit jener sich Daten unter Windows CE und somit auch unter Windows Mobile kompimieren lassen: zlib Compression Library 1.2.3 for Windows CE von OpenNETCF, welche bereits durch ihre .NET Compact Bibliothek "Smart Device Framework" bekannt sind.
Die Bibliothek ist als Sourcecode- und Binärpaket für native Entwickler erhältlich und steht unter der Shared Source License. Für Entwickler mit dem .NET Compact Framework steht zusätzlich ein managed Wrapper zur Verfügung.
Als Alternative hierzu sei auch noch die SharpZipLib erwähnt, welche ebenfalls unter dem .NET Compact Framework eingesetzt werden kann und unter der GPL steht.
Eingestellt von
Peter Nowak
um
19:51
Labels: CF, Mobile Programming, Software und Bibliotheken
Auf der Hompage von OpenNETCF ist nun das SmartDeviceFramework 2.0 als Releaseversion verfügbar.
Diese Version ist nun endlich an das .NET Compact Framework 2.0 angepasst.
Die API Beschreibung ist hier zu finden.
Seit Freitag ist die erste Beta des ersten ServicePacks für das Microsoft .NET Compact Framework 2.0 erschienen. Neben vielen Detailverbesserungen und Bugfixes gibt es 2 neue Tools. Während die erste eine Desktopversion der Performance Monitors für das Compact Framework darstellt ist die 2. Anwendung zur Überwachung der Netzwerkkommunikation von WIndows Mobile gedacht. Dabei werden mit SSL verschlüsselte werden natürlich auch nur verschlüsselt dargestellt.
Link: Blog NETCF Team
In seinem Blogeintrag beschreibt Scott Holden, welche konfigurativen Änderungen auf dem Pocket PC nötig sind, um seine "alte" CF 1 Applikation direkt im CF 2 laufen zu lassen.
Manchmal gibt es Anforderungen an Applikationen, welche im ersten Augenblick sich ganz einfach anhören. Dazu gehört, das eine Compact Framework (CF) Anwendung auch auf dem Desktop laufen soll. Doch was passiert, wenn diese Applikation nur eine Instanz haben darf? Okay, unter dem Pocket PC kein Thema, da funktioniert es eh so, dass nur eine Instanz läuft, und bei wiederholtem Auruf, die Anwendung in den Vordergrund geholt wird. Was ist aber mit dem Desktop, wenn es sich um die gleich Anwendung handelt und man nur die Methoden des CF zur Verfügung hat? Dann sind die üblichen Methoden mit Mutex etc. ganz schnell passé.
Eine passable Möglichkeit ist die Nutzung von "FindWindow" aus der user32.dll. Diese ist zwar nur auf dem Desktop verfügbar (beim PPC befindet sich die Funktion in der coredll.dll), was jedoch nicht weiter stört.
Über einen DLLImport ist die Funktion aus der user32.dll schnell eingebunden. Was passiert aber, wenn diese Funktion im PPC aufgerufen wird? Die Antwort ist einfach: GARNICHTS. Diese Funktion wird einfach übergangen Um es jedoch sauberer zu machen, sollte man über System.Environment die entsprechende Plattform zurückgeben lassen, und nur bei Bedarf per if/else ausführen lassen.
Über diese kleine Hilfe ist es ganz schnell möglich, auch auf dem Desktop eine Applikation zu bauen, welche nur eine Instanz besitzt.
Auch dieses Phänomen kommt schnell auf, wenn man Hybrid-Applikationen baut, welche auf dem Desktop und PPC laufen müssen.
Oft ist es nötig, für diese Applikation zusätziche Implementationen zu schreiben, welche auf dem PPC garnicht ausgeführt werden. Wie nun also testen?
Hierbei gibt es einen kleinen Trick, welchen man anwenden kann. Man muss die Applikation ersteinmal als Debug kompilieren (STRG+SHIFT+B). Ein F5 bringt hier keinen weiter, da ansonsten die Anwendung deployed und auf dem Device ausgeführt wird. Stattdessen sollte die Applikation einen definierten Punkt haben, an der sie wartet (MessageBox, Hauptmaske o.ä.). Dann kann man sich eines kleinen Tricks behelfen: Über Debug->Prozesse... sucht man sich den zugehörigen Prozess aus, welchen man debuggen möchte. In diesem Fall unsere Applikation. Wenn nun der Debugger an die Applikation angehängt wurde, kann man, wie sonst auch gewohnt, die Applikation debuggen.