Desarrollo de aplicaciones para Windows IoT Enterprise

En esta página se recogen recursos sobre el desarrollo de aplicaciones de Windows para ayudarte a comenzar a desarrollar aplicaciones para dispositivos Windows IoT Enterprise.

El desarrollo de aplicaciones para dispositivos Windows IoT Enterprise es muy similar al desarrollo para dispositivos clientes Windows. Las mismas aplicaciones compiladas para el cliente Windows se ejecutan en Windows IoT Enterprise sin modificaciones. La diferencia entre el desarrollo de aplicaciones para Windows IoT Enterprise y el escritorio de Windows es la consideración adicional que se debe tener en cuenta para el hardware en el que se implementa la aplicación y cualquier directiva de personalización o bloqueo de Windows IoT aplicada al dispositivo.

Configuración del entorno

Instalación de herramientas de desarrollo

Para desarrollar aplicaciones para Windows IoT, necesitarás Visual Studio, Windows SDK y el SDK para aplicaciones de Windows.

Tema Recurso Descripción
Visual Studio Visual Studio La herramienta de desarrollo preferida de muchos desarrolladores de Windows, Visual Studio, te permitirá crear proyectos para Windows y otras muchas plataformas. Es un IDE eficaz que puede ayudarte a escribir, depurar e implementar las aplicaciones.
Windows SDK Windows SDK Windows SDK es una plataforma de desarrollo que te permite crear aplicaciones para UWP y aplicaciones de escritorio/Win32. Está diseñado en torno a las API de Windows que están asociadas a versiones concretas del sistema operativo.
SDK para aplicaciones de Windows SDK para aplicaciones de Windows El SDK para aplicaciones de Windows complementa a Windows SDK al permitirte crear aplicaciones de escritorio modernas que se pueden instalar en versiones de Windows (hasta Windows 10, 1809).

Iniciar desarrollo

Desarrollo de aplicaciones para Windows

Conócelo todo sobre cómo escribir aplicaciones para dispositivos Windows y explorar código de aplicación de ejemplo.

Tema Recurso Descripción
Opciones de plataforma y lenguaje de Windows Opciones de desarrollo de Windows Windows ofrece una amplia gama de opciones para crear aplicaciones, desde el lenguaje de programación hasta el marco de trabajo de la aplicación. Este artículo contiene la información que necesitas para comenzar a crear aplicaciones para Windows.
Comparación de frameworks de aplicaciones Marcos de desarrollo de aplicación Evalúa qué marco de desarrollo de aplicación es más adecuado para la tuya.
Opciones de empaquetado e implementación de las aplicaciones de Windows Aplicaciones de Windows: empaquetado, implementación y proceso Obtén información sobre cómo las aplicaciones de Windows se empaquetan, distribuyen e implementan y cómo afectan estas diferentes opciones al proceso en tiempo de ejecución de la aplicación.
Código de ejemplo Ejemplos de aplicaciones para el desarrollo en Windows En este tema se compila código de ejemplo para aplicaciones de Windows que muestran tareas, características y patrones de uso de API específicos. Los ejemplos muestran características de Windows App SDK / WinUI 3, UWP / WinUI 2, .NET MAUI, etc.

Consideraciones de desarrollo de aplicaciones de Windows IoT

Obtén información sobre los patrones y características de desarrollo de aplicaciones de Windows que se usan habitualmente para dispositivos Windows IoT.

Tema Recurso Descripción
Modo incrustado Modo incrustado Habilita las aplicaciones UWP para que se ejecuten en segundo plano y para que usen las funcionalidades de aplicación UWP lowLevelDevices o systemManagement.
Aplicaciones en segundo plano (UWP) Tareas y aplicaciones de UWP en segundo plano Las aplicaciones en segundo plano son un tipo especial de aplicación de UWP que no tiene interfaz de usuario, pero que puede ejecutar código. Estas aplicaciones se usan normalmente en dispositivos Windows IoT Core y dispositivos sin pantallas. El modo incrustado debe estar habilitado para que las aplicaciones en segundo plano se ejecuten.
Servicios de Windows (.NET) Servicios de Windows Los servicios de Windows son procesos en segundo plano que no tienen interfaz de usuario y están diseñados para realizar tareas o funciones específicas. Los servicios de Windows se usan normalmente en dispositivos cliente de Windows y también se pueden usar en dispositivos Windows IoT.
Implementación de aplicación de UWP Implementación y depuración de aplicaciones de UWP Describe las distintas formas de implementar y depurar aplicaciones de UWP. El paradigma más común para dispositivos IoT es la implementación en una máquina remota, lo que requiere pasos adicionales para configurar en el dispositivo IoT.
Depuración de aplicación de UWP Depuración de aplicaciones de UWP en máquinas remotas Describe cómo depurar una aplicación que se ejecuta en un dispositivo Windows IoT desde tu máquina de desarrollo.

Desarrollo de aplicaciones para dispositivos ARM64

Aplicaciones nativas frente a aplicaciones ARM64 emuladas

Una aplicación ARM64 nativa hace referencia a una aplicación compilada de forma nativa para Arm64. Una aplicación ARM64 emulada hace referencia a una aplicación compilada para X86 o X64, pero usa la tecnología de emulación integrada de Windows para permitir que la aplicación se ejecute en dispositivos ARM64 sin modificaciones.

Las aplicaciones ARM64 nativas tienen varias ventajas en comparación con las aplicaciones ARM64 emuladas, entre las que se incluyen:

  • Rendimiento mejorado
  • Menor consumo de energía
  • Mejor compatibilidad

La decisión de ejecutar una aplicación ARM64 de forma nativa o emulada en un dispositivo ARM64 se reduce a lo que es adecuado para tu escenario de dispositivo específico. Se recomienda compilar las aplicaciones de forma nativa para ARM64 para que puedas aprovechar las ventajas de las aplicaciones nativas de ARM64. Sin embargo, también es perfectamente adecuado ejecutar la aplicación con la tecnología de emulación integrada ARM64 de Windows.

Cómo agregar compatibilidad nativa de ARM64

Para agregar compatibilidad nativa de ARM64 a una aplicación existente o nueva, sigue la guía sobre cómo agregar compatibilidad con ARM64 a las aplicaciones de Windows

¿Qué versiones de Windows IoT Enterprise son compatibles con la emulación de aplicaciones?

Windows IoT Enterprise es compatible con la emulación de aplicaciones en dispositivos ARM64 según esta tabla.

Versión del SO Compatibilidad con la emulación en dispositivos ARM64
Windows 10 X86
Windows 11 X86, X64

Cómo usar la tecnología de emulación ARM64 para ejecutar tu aplicación

Para usar la tecnología de emulación integrada de Windows para ejecutar una aplicación X86 o X64 en el dispositivo ARM64, simplemente implementa la aplicación X86 o X64 en el dispositivo ARM64 y ejecútalo normalmente.

Compatibilidad de .NET Framework con ARM64

.NET Framework 4.8.1 agregó compatibilidad nativa con Arm64 en Windows 11, que permite a los desarrolladores compilar una aplicación de forma nativa para ARM64 y ejecutarla en un dispositivo ARM64 sin usar emulación arm64. Esto es compatible en dispositivos Windows 11 a través de la compatibilidad nativa con ARM64 en .NET Framework Runtime 4.8.1.

Nota:

El entorno de ejecución de .NET Framework 4.8.1 no admite aplicaciones nativas de ARM64 en un dispositivo Windows 10.

Para ejecutar una aplicación nativa de ARM64 .NET Framework 4.8.1 en un dispositivo ARM64 Windows 11 IoT Enterprise, asegúrate de que el entorno de ejecución de .NET Framework 4.8.1 esté instalado en el dispositivo o empaquetado con la aplicación.

Más recursos para el desarrollo de aplicaciones

Pruebas y depuración

Usa Visual Studio para depurar las aplicaciones y ejecutar pruebas antes de la versión. Asegúrate de seleccionar la versión correcta de Visual Studio en la lista desplegable de la parte superior del panel de tabla de contenido.

Tema Recurso Descripción
Depura tus aplicaciones con Visual Studio Depura tus aplicaciones con Visual Studio Usa el depurador de Visual Studio para preparar las aplicaciones para su lanzamiento.
Exploración de las pruebas en Visual Studio Herramientas de pruebas de Visual Studio Exploración de las opciones de prueba disponibles en Visual Studio
Pruebas unitarias Pruebas unitarias en Visual Studio Introducción a las pruebas unitarias en Visual Studio
Pruebas Unitarias en Vivo Live Unit Testing Live Unit Testing ejecuta las pruebas unitarias automáticamente y en tiempo real a medida que se realizan cambios de código.
Pruebas remotas Pruebas remotas en Visual Studio Las pruebas remotas permiten a los desarrolladores conectar Visual Studio 2022 a entornos remotos para ejecutar y depurar pruebas.

Implementación de tu aplicación

Cómo publicar y compartir tu aplicación. Asegúrate de seleccionar la versión correcta de Visual Studio en la lista desplegable de la parte superior de la tabla del panel de contenidos, y el idioma correcto a la derecha, encima del título del artículo.

Tema Recurso Descripción
Visión general del despliegue de tu aplicación Implementa tu aplicación con Visual Studio Usa Visual Studio para implementar tus aplicaciones.
Desplegar en una carpeta local Implementa una carpeta local con Visual Studio La implementación en una carpeta local se suele usar para las pruebas, o para iniciar una implementación de ensayo en la que se vaya a emplear otra herramienta para la implementación final.
Publicación en Azure Publicación en Azure mediante Visual Studio Publica tu aplicación en Azure mediante Visual Studio.
Publicación en la Web o en un recurso compartido de red Publicación en la Web mediante Visual Studio Publica la aplicación en la Web o impleméntala en un recurso compartido de red en Visual Studio.
Creación de un paquete de instalador Creación de un paquete de instalador Uso de Visual Studio para crear un paquete del instalador de escritorio de Windows para la aplicación
Publicación en Microsoft Store Publicación en Microsoft Store Publica primero en Microsoft Store
Implementación como una aplicación de Windows Implementación como una aplicación de Windows (creación de un instalador de aplicación) Para empaquetar un proyecto como una aplicación de Windows que pueda recibir actualizaciones de mantenimiento, crea un instalador de aplicación.
Desplegar en un dispositivo (UWP) Implementación remota en un dispositivo Implementa una UWP para realizar pruebas en un dispositivo.
Preinstala tu aplicación en la imagen del sistema operativo Preinstalación de aplicaciones con DISM En este tema se explica cómo preinstalar aplicaciones para que se incluyan como parte de una imagen de Windows.
Instalación de aplicaciones mediante WinGet Uso de WinGet para instalar aplicaciones en Windows IoT Enterprise La herramienta de línea de comandos WinGet permite a los usuarios detectar, instalar, actualizar, quitar y configurar aplicaciones en equipos con Windows 10 y Windows 11.

Otras herramientas útiles de desarrollo de Windows

Tema Recurso Descripción
Instalar Dev Home Dev Home Inicio para desarrolladores se introdujo con Windows 11 y es un panel que proporciona acceso rápido a las herramientas que necesita para desarrollar aplicaciones para Windows. También proporciona vínculos a ejemplos de código y formación.
Unidad de desarrollo Dev Drive Para agilizar las tareas de desarrollo comunes, puedes crear una unidad con formato especial que se usará para almacenar los proyectos denominada Unidad de desarrollo.
Visual Studio Code Visual Studio Code Al ser un editor altamente extensible, Visual Studio Code se puede personalizar para admitir casi cualquier tipo de desarrollo que pueda considerar. Es una opción excelente para escribir aplicaciones para Windows y otras plataformas.
Windows Terminal Terminal Windows Terminal de Windows es una aplicación host moderna para intérpretes de comandos que ya le gustan, como la consola de comandos, PowerShell, y bash (a través del Subsistema de Windows para Linux (WSL)). Proporciona una interfaz moderna con pestañas y admite temas y extensiones.
Subsistema de Windows para Linux Subsistema de Windows para Linux WSL permite ejecutar distribuciones de Linux en Windows y es una excelente manera de usar herramientas de código abierto para desarrollar aplicaciones para Windows.