Controlar dispositivos con la API de conectividad de dispositivos inteligentes

Actualización: noviembre 2007

Microsoft Visual Studio incluye varias API de conectividad de dispositivos Smart Device que permiten a los programadores aprovechar algunas características de conectividad básica en las aplicaciones. La conectividad básica es un marco de comunicaciones utilizado por productos como Microsoft Visual Studio, Microsoft Visual Studio Remote Tools y Microsoft Platform Builder para implementar archivos, procesos de inicio, dispositivos flash y aplicaciones de depuración en los dispositivos Smart Device.

Normalmente, la API de conectividad de dispositivos Smart Device se utiliza para escribir aplicaciones como Herramientas remotas para proyectos de dispositivos. La ventaja es que los programadores pueden centrarse en programar la lógica, porque se eliminan detalles sobre la administración y conexión a los dispositivos. Las API de conectividad de dispositivos Smart Device permiten las siguientes tareas:

  • Mostrar una lista de plataformas y dispositivos disponibles.

  • Establecer una conexión entre un equipo de escritorio local y un dispositivo de destino.

  • Implementar aplicaciones, paquetes y archivos en un dispositivo de destino.

  • Iniciar, detener y enumerar procesos en un dispositivo de destino.

  • Intercambiar datos entre el escritorio y dispositivo de destino.

Mediante las API de conectividad de dispositivos Smart Device, puede escribir herramientas remotas y automatizar tareas de administración de dispositivos.

Arquitectura típica de las aplicaciones de conectividad de dispositivos Smart Device

La mejor manera de entender la API de conectividad de dispositivos Smart Device es ejecutar una aplicación de escritorio típica que utilice dicha API.

  1. Para utilizar el espacio de nombres Microsoft.SmartDevice.Connectivity, la aplicación de escritorio agrega una referencia a unidad de disco:\Archivos de programa\Archivos comunes\Microsoft Shared\CoreCon\1.0\Bin\Microsoft.Smartdevice.Connectivity.dll.

  2. La aplicación crea un DatastoreManager y lo usa para enumerar una colección de objetos Platform. Cada Platform representa una plataforma, por ejemplo Windows Mobile 5.0 Pocket PC, que se instala en el almacén de datos del equipo de escritorio.

  3. La aplicación utiliza Platform para enumerar una colección de objetos Device. Cada Device representa uno de los dispositivos o emuladores, por ejemplo el emulador de Windows Mobile 5.0 Pocket PC, que pertenece a la plataforma.

  4. La aplicación utiliza Device para tener acceso a información sobre el dispositivo, aprovisionarlo y conectarse a él.

  5. Después de la conexión al dispositivo, la aplicación utiliza FileDeployer para implementar archivos en el dispositivo o RemoteProcess para iniciar o detener procesos en el dispositivo.

  6. Si la aplicación debe realizar tareas personalizadas que no están disponibles en FileDeployer, RemoteProcess ni Device, puede crear un RemoteAgent para implementar un agente de dispositivos en el dispositivo e intercambiar datos con él. Un agente de dispositivos es una aplicación de Smart Device que crea y utiliza el espacio de nombres Microsoft.SmartDevice.DeviceAgentTransport (para los agentes de dispositivos de Visual C# o Visual Basic) o la biblioteca DeviceAgentTransport.dll (para los agentes de dispositivos de Visual C++). Para que un RemoteAgent implemente un agente de dispositivos, éste se debe registrar en el almacén de datos del equipo de escritorio como un paquete de complementos. Para obtener más información, consulte Información general sobre paquetes de complementos. La aplicación realiza los siguientes pasos para implementar y comunicar con un agente de dispositivos:

    1. La aplicación de escritorio llama a RemoteAgent.Start para implementar e iniciar el agente de dispositivos.

    2. Después de que el agente de dispositivos se ejecuta en el dispositivo, llama a IDeviceAgentTransport.AcknowledgeLaunch para confirmar la conexión.

    3. El agente de dispositivos llama a IDeviceAgentTransport.AcceptConnectionEx para aceptar una solicitud de secuencia de paquetes del escritorio.

    4. La aplicación de escritorio llama a RemoteAgent.CreatePacketStream para obtener un DevicePacketStream para la transferencia de datos.

    5. Desde allí, la aplicación remota y el agente de dispositivos intercambian datos leyendo y escribiendo los objetos Packet o IPacket en sus secuencias de paquetes del escritorio respectivas.

    El agente de dispositivos tiene acceso completo mediante programación para recopilar información y manipular el dispositivo porque se ejecuta en el dispositivo.

    Nota:

    El agente de dispositivos descrito anteriormente en este tema utiliza Microsoft.SmartDevice.DeviceAgentTransport y .NET Compact Framework. Como alternativa, puede crear agentes de dispositivos no administrados mediante la API de conectividad de dispositivos inteligentes en dispositivos no administrados.

Para obtener una guía paso a paso de cómo crear este tipo de aplicación, vea Tutorial: Intercambiar datos entre aplicaciones de escritorio y de dispositivos.

Archivos y espacios de nombres en la API de conectividad de dispositivos Smart Device

La API de conectividad de dispositivos Smart Device se compone de:

  • El espacio de nombres Microsoft.SmartDevice.Connectivity para usarlo en aplicaciones de escritorio. ((unidad de disco:\Archivos de programa\Archivos comunes\Microsoft Shared\CoreCon\1.0\Bin\Microsoft.Smartdevice.Connectivity.dll).

  • El espacio de nombres Microsoft.SmartDevice.DeviceAgentTransport para crear aplicaciones de agente de dispositivos de Visual C# o Visual Basic. (unidad de disco:\Archivos de programa\Archivos comunes\Microsoft Shared\CoreCon\1.0\Target\Microsoft.Smartdevice.DeviceAgentTransport.dll).

  • API de conectividad de dispositivos inteligentes en dispositivos no administrados para crear aplicaciones de agente de dispositivos de Visual C++. (unidad de disco:\Archivos de programa\Archivos comunes\Microsoft Shared\CoreCon\1.0\Target\wce400\cpu\DeviceAgentTransport.dll)

¿Qué es el Almacén de datos?

El Almacén de datos es un conjunto de archivos XML en el equipo de escritorio que contiene información sobre las plataformas, dispositivos, emuladores y paquetes que se instalan en el equipo. El almacén de datos forma parte de la conectividad básica y se instala con Microsoft Visual Studio o Microsoft Platform Builder. El contenido del Almacén de datos se modifica cada vez que se instala un SDK que se basa en Windows CE, por ejemplo Windows Mobile.

El Almacén de datos se encuentra en unidad de disco:\Users\All Users\Microsoft\corecon\1.0 (Windows Vista) o unidad de disco: \Documents and Settings\All Users\Application Data\Microsoft\corecon\1.0 (Windows XP).

Nota:

Haga una copia de seguridad del almacén de datos antes de modificar ningún archivo de la carpeta del almacén de datos. Los archivos incorrectos dañarán el almacén de datos y Visual Studio no funcionará.

Sólo debería modificar la carpeta addons del almacén de datos. Para obtener más información, consulte Información general sobre paquetes de complementos.

Vea también

Otros recursos

Smart Device Connectivity API Samples