Ich bekomme des Öfteren Fragen zum .NET Compact Framework bzw. Windows Mobile gestellt. Damit die Antworten recheriert werden können, sammele ich sie ab sofort hier. Mit Microsoft, den Redmonder Jungs, arbeite ich darüber hinaus an der Übersetzung ihrer FAQ. Auch diese wird hier nach und nach eingepflegt.
Die Mobile Computing FAQ ist über compactframework.de/mobilecomputingfaq aufrufbar. Jede Frage & Antwort kann aber einzeln durch die Eingabe von compactframework.de/mobilecomputing#Zahl, also z. B. compactframework.de/mobilecomputingfaq#1, angesteuert werden. Unterhalb jeder Frage/Antwort finden Sie diese Permanentlinks zum speichern/verlinken. Die # sind fortlaufend und haben bis auf die Verwendung als eindeutige Identifizierung übrigens keine Bedeutung.
Haben Sie eine Frage zu Mobile Computing mit dem .NET Compact Framework?
Schreiben Sie an
torsten.weber@compactframework.de. Bitte haben Sie Verständnis, wenn sie nicht sofort beantwortet wird. Jede E-Mail wird aber gelesen und im Endeffekt auch beantwortet.
Wo finde ich die SDK für Windows Mobile?
Wo finde ich Emulatoren für Windows Mobile?
Ich möchte für Windows Mobile 5 entwickeln. Kann ich die Projektvorlage Windows CE 5.0 nutzen?
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
compactframework.de/mobilecomputingfaq#1
Microsoft liefert leider zu Visual Studio 2005 nicht gleich die jeweiligen SDKs für Windows Mobile 5 mit aus. Diese müssen Sie nachinstallieren, jeweils für Pocket PCs und Smartphones. Sind sie nachinstalliert, findet sich unter Datei, Neu, Projekt, Visual Basic bzw. Visual C# der Eintrag Windows Mobile 5.0 Pocket PC bzw. Windows Mobile 5.0 Smartphone. In den SDKs sind Emulatoren enthalten. Dafür lohnt sich u. U. die Installation von lokalisierten Abbildern. Das heißt, dass die Emulatoren sich dann z. B. wie ein deutsch lokalisiertes mobiles Gerät mit Windows Mobile 5 verhalten. Die Aussagen gelten für Windows Mobile 6 bzw. vorherigen Versionen entsprechend. Der Visual Studio 2005 mit enthaltene Geräteemulator sollte auf die aktuelle Version 2 gebracht werden und ist übrigens auch ohne Visual Studio ausführbar.
Können Sie mir ein deutsches Buch zu Windows Mobile 6 empfehlen?
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
compactframework.de/mobilecomputingfaq#2
Nein. Abgesehen, ohne jetzt Werbung machen zu wollen, von Programmieren mit dem .NET Compact Framework 3.5 gibt es derzeit kein gutes deutsches Buch dazu. Im englischsprachigen Bereich kann Mobile Development Book empfohlen werden.
Wie kann ich automatisch per Bluetooth mein mobiles Gerät synchronisieren?
ActiveSync zeigt einen Dialog "Verbinden mit" an. Wie kann ich ihn unterdrücken.
Ich möchte gerne
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
compactframework.de/mobilecomputingfaq#3
Siehe hier.
Der Dialog "Verbinden mit" kann nicht unterdrückt werden. ActiveSync unterstützt keine entsprechenden Parameter dazu. Mittels des Platform Builder gibt es aber eine Lösung. Der Anwendungscode in der Datei rnaapp.c muss dazu verändert werden. Dazu ist der Anwendungscode von Microsoft zu kopieren (RNAAPP in C:\WINCE500\PUBLIC\COMMON\OAK\DRIVERS\NETSAMP\), in die eigene Plattform zu übernehmen und folgende Methodenaufrufe entweder auszukommentieren oder zu überspringen: ShowWindow() / SetForegroundWindow().
Wo finde ich die SDK zum SQL Server Mobile Edition?
Wo finde ich Ressourcen zum SQL Server Mobile Edition?
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
compactframework.de/mobilecomputingfaq#4
Für den mobilen SQL Server hat Microsoft über die Zeit hinweg immer mal wieder den Namen geändert. Er hieß u. a. SQL Server Everywhere, SQL Server CE, SQL Server Mobile und jetzt SQL Server Compact.
Für den SQL Server Compact gibt es folgende Ressourcen:
Ich habe ein Anwendung unter Visual Studio 2003 und 2005 (WM 5) geschrieben.
Es einige Befehle nicht in beiden Sprachen bei Threads, wie z. B. Thread.Sleep(1000).
Wie kann ich den gleichen Effekt unter Windows Mobile 2003 wie 5 erreichen?
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
compactframework.de/mobilecomputingfaq#5Es kann als eine Lösung ein echtes Multithreading implementiert werden, also nicht nur schrittweise die Anwendung angehalten werden, damit es wie eine Anwendung mit implementierten Multithreading aussieht. Bei Visual Studio 2003 (und natürlich höher) kann das
SmartDeviceFramework als Zusatz verwendet werden. Die Threading-Klassen des .NET Compact Framework 1 sind nicht so reichhaltig. Mit dem SmartDeviceFramework kann hier nachgerüstet werden.
Ich vermisse den Terminalclient unter meinem mobilen Gerät. Wo ist er?
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
compactframework.de/mobilecomputingfaq#6
Ob der Terminalclient auf einem mobilen Gerät verfügbar ist oder nicht, entscheidet der Provider. Dieser setzt aus Windows CE das mobile Betriebssystem Windows Mobile für ein mobiles Gerät je nach Variante unterschiedlich zusammen. Auf einigen mobilen Geräten ist daher ein Terminalclient zu finden, auf anderen nicht.
Wie funktioniert eine globale Fehlerbehandlung beim .NET Compact Framework?
Ich möchte gerne Application.ThreadException nutzen, wie geht das?
Bei AppDomain.UnhandledException scheint e.IsTerminating immer false zu sein – warum?
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
compactframework.de/mobilecomputingfaq#7
Lesen Sie diesen
Artikel von mir zu globaler Fehlerbehandlung beim .NET Compact Framework.
Mit freundlicher Unterstützung zur Verfügung gestellt von visual studio one.
Wie kann ich mit dem .NET Compact Framework Dateien hochladen?
Gibt es eine Komponente für FTP-Uploads für das .NET Compact Framework?
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
compactframework.de/mobilecomputingfaq#8
Als Ideengeber oder zur Lizenz empfehle ich die Bibliothek von
www.inthehand.com.
Da kann die Aufgabe mit zwei, die Zeilen Anwendungscode erledigt werden.
WebClient wc = new WebClient();
...
wc.UploadFile(uriDestination, openFileDialog.FileName);
...
Wie kann ich ein Video mit dem .NET Compact Framework abspielen?
Gibt es Steuerelemente für mobile Anwendungen für das Abspielen von Videos?
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
compactframework.de/mobilecomputingfaq#9
Ja das geht. Der Trick ist dabei, die Interfaces des Windows Media Player (Desktop Edition) zu verwenden. Diese sind nämlich mit dem der mobilen Edition identisch, nur das der logischerweise weniger davon hat (z. B. keine für das Brennen von CD-ROMs). Über ein paar Schritte, unwichtig an dieser Stelle welche, ist ein Wrapper für den mobilen Player von Microsoft generierbar. Ein Wrapper ist aber noch kein Steuerelement. Hier gibt es Hilfe vom Team um
OpenNETCF (AxWMPLib.cs). Anwender des SmartDeviceFrameworks, die Lizenzbedingungen sind zu beachten, können dieses Steuerelement bekommen und dann ist der Rest nur sehr wenig an Anwendungscode.
Ein
Beispiel von mir, bei dem alles enthalten ist, kann gerne wiederverwendet werden (Lizenz von OpenNETCF beachten). Kommerzielle Steuerelemente gibt es auch, mit denen noch weniger Arbeit ist. Z. B. von
OpenNETCF.
Wie kann ich die Auflösung eines mobilen Gerätes, z. B. für Bilder, verwenden?
Wie kann ich die Ausrichtung des Bildschirmes ermitteln?
Wie kann ich die Ausrichtung des Bildschirmes verändern?
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
compactframework.de/mobilecomputingfaq#10
Schauen Sie sich dazu folgendes
Beispiel an, es enthält alle drei Fragestellungen.