Steuern von Geräten über die Smart Device Connectivity-API

Aktualisiert: November 2007

Microsoft Visual Studio enthält Smart Device Connectivity-APIs, mit denen Entwickler die Vorteile einiger Core Connectivity-Features in Anwendungen nutzen können. Core Connectivity ist ein Kommunikationsframework, das von Produkten wie Microsoft Visual Studio, Microsoft Visual Studio Remote Tools und Microsoft Platform Builder zum Bereitstellen von Dateien, Starten von Prozessen, Flash-Vorgängen für Geräte und Debuggen von Anwendungen auf intelligenten Geräten verwendet wird.

Die Smart Device Connectivity-API wird normalerweise verwendet, um Anwendungen wie Remotetools für Geräteprojekte zu schreiben. Der Vorteil liegt darin, dass Entwickler sich stärker auf die Programmierlogik konzentrieren können, da Details zur Verbindung und Verwaltung von Geräten getrennt behandelt werden. Durch Smart Device Connectivity-APIs werden folgende Aufgaben ermöglicht:

  • Auflisten der verfügbaren Plattformen und Geräte

  • Herstellen einer Verbindung zwischen einem lokalen Desktopcomputer und einem Zielgerät

  • Bereitstellen von Anwendungen, Paketen und Dateien für ein Zielgerät

  • Starten, Anhalten und Auflisten von Prozessen für ein Zielgerät

  • Austauschen von Daten zwischen dem Desktop und dem Zielgerät

Mithilfe von Smart Device Connectivity-APIs können Sie Remotetools schreiben und Aufgaben zur Geräteverwaltung automatisieren.

Typische Architektur von Smart Device Connectivity-Anwendungen

Am besten vergegenwärtigen Sie sich die Smart Device Connectivity-API, indem Sie eine typische Desktopanwendung ausführen, die die Smart Device Connectivity-API verwendet.

  1. Um den Microsoft.SmartDevice.Connectivity-Namespace zu verwenden, fügt die Desktopanwendung einen Verweis auf Laufwerk:\Programme\Gemeinsame Dateien\Microsoft Shared\CoreCon\1.0\Bin\Microsoft.Smartdevice.Connectivity.dll hinzu.

  2. Die Anwendung erstellt einen DatastoreManager und verwendet ihn zum Erstellen einer Auflistung von Platform-Objekten. Jede Platform stellt eine Plattform wie Windows Mobile 5.0 Pocket PC dar, die im Datenspeicher des Desktopcomputers installiert wird.

  3. Die Anwendung verwendet eine Platform, um eine Auflistung von Device-Objekten zu erstellen. Jeder Device stellt eines der Geräte oder einen der Emulatoren, z. B. Windows Mobile 5.0 Pocket PC-Emulator dar, die der Plattform angehören.

  4. Die Anwendung verwendet Device, um auf Geräteinformationen zuzugreifen, das Gerät bereitzustellen und eine Verbindung mit dem Gerät herzustellen.

  5. Nachdem eine Verbindung mit dem Gerät hergestellt wurde, verwendet die Anwendung FileDeployer, um Dateien für das Gerät bereitzustellen oder RemoteProcess, um Prozesse auf dem Gerät zu starten oder anzuhalten.

  6. Wenn die Anwendung benutzerdefinierte Aufgaben ausführen muss, die in FileDeployer, RemoteProcess oder Device nicht verfügbar sind, kann sie einen RemoteAgent erstellen, um einen Geräte-Agent für das Gerät bereitzustellen und Daten mit ihm auszutauschen. Ein Geräte-Agent ist eine intelligente von Ihnen erstellte Geräteanwendung, die entweder den Microsoft.SmartDevice.DeviceAgentTransport-Namespace (für Visual C#- oder Visual Basic-Geräte-Agents) oder die Bibliothek DeviceAgentTransport.dll (Visual C++-Geräte-Agents) verwendet. Damit ein Geräte-Agent von einem RemoteAgent bereitgestellt werden kann, muss er im Datenspeicher des Desktopcomputers als Add-On-Paket registriert werden. Weitere Informationen finden Sie unter Übersicht über Add-On-Pakete. Die Anwendung führt die folgenden Schritte aus, um den Geräte-Agent bereitzustellen und mit ihm zu kommunizieren:

    1. Die Desktopanwendung ruft RemoteAgent.Start auf, um den Geräte-Agent bereitzustellen und zu starten.

    2. Nachdem der Geräte-Agent auf dem Gerät ausgeführt wird, ruft er IDeviceAgentTransport.AcknowledgeLaunch auf, um die Verbindung zu bestätigen.

    3. Der Geräte-Agent ruft IDeviceAgentTransport.AcceptConnectionEx auf, um eine Paketstreamanforderung vom Desktop zu akzeptieren.

    4. Die Desktopanwendung ruft RemoteAgent.CreatePacketStream auf, um einen DevicePacketStream für die Datenübertragung zu erhalten.

    5. Von diesem Zeitpunkt aus tauschen die Remoteanwendung und der Geräte-Agent Daten aus, indem sie Packet-Objekte oder IPacket-Objekte aus den entsprechenden Gerätepaketstreams lesen bzw. in diese Streams schreiben.

    Der Geräte-Agent verfügt über vollen programmgesteuerten Zugriff, um Informationen zu erfassen und das Gerät zu ändern, da er auf dem Gerät ausgeführt wird.

    Hinweis:

    Der Geräte-Agent, der weiter oben in diesem Thema beschreiben wurde, verwendet Microsoft.SmartDevice.DeviceAgentTransport und das .NET Compact Framework. Alternativ können Sie nicht verwaltete Geräte-Agents mit der Nicht verwaltete geräteseitige Device Connectivity-API für intelligente Geräte erstellen.

Eine schrittweise Anleitung zum Erstellen dieser Art von Anwendung finden Sie unter Exemplarische Vorgehensweise: Austauschen von Daten zwischen Desktop- und Geräteanwendung.

Dateien und Namespaces in der Smart Device Connectivity-API

Die Smart Device Connectivity-API besteht aus:

Was ist der Datenspeicher?

Der Datenspeicher entspricht einer Gruppe von XML-Dateien auf dem Desktopcomputer und enthält Informationen über die auf dem Computer installierten Plattformen, Geräte, Emulatoren und Pakete. Der Datenspeicher ist Teil der Core Connectivity und wird mit Microsoft Visual Studio oder Microsoft Platform Builder installiert. Der Inhalt des Datenspeichers ändert sich, sobald Sie ein auf Windows CE basierendes SDK installieren, z. B. Windows Mobile.

Der Datenspeicher befindet sich unter Laufwerk:\Users\All Users\Microsoft\corecon\1.0 (Windows Vista) oder Laufwerk:\Dokumente und Einstellungen\All Users\Anwendungsdaten\Microsoft\corecon\1.0 (Windows XP).

Hinweis:

Sichern Sie den Datenspeicher, bevor Sie Dateien im Ordner des Datenspeichers ändern. Fehlerhafte Dateien können den Datenspeicher beschädigen, sodass Visual Studio nicht mehr funktioniert.

Sie sollten nur den addons-Ordner im Datenspeicher ändern. Weitere Informationen finden Sie unter Übersicht über Add-On-Pakete.

Siehe auch

Weitere Ressourcen

Smart Device Connectivity API Samples