win-universal-app - microsoft - windows store apps gratis
Limitaciones de UWP en aplicaciones de escritorio (1)
La frase "aplicación de escritorio Win32" está mal definida ya que el modelo de programación de la API de Win32 ha existido desde Windows NT 3.1. También puede cubrir docenas de lenguajes de desarrollo y marcos de UI durante las dos décadas intermedias.
Aquí hay una visión general rápida de las diferencias clave de UWP:
Superficie API. La plataforma UWP admite muchas API de Win32 y COM, pero no todas, e introduce nuevas API. Si su "aplicación de escritorio Win32" está utilizando en su mayoría API ANSI que se remontan a Windows 95, entonces tiene muchas actualizaciones que hacer. Si está utilizando la mayoría de las API de UNICODE de la era de Windows Vista, entonces muchas cosas "simplemente funcionan". Consulte la API de Win32 y COM para las aplicaciones de tiempo de ejecución de Windows (Sistema) .
Contexto de seguridad. La plataforma UWP ejecuta aplicaciones en un contexto de seguridad de AppContainer. Las "aplicaciones de escritorio Win32" en Windows Vista o posterior se ejecutan como "Usuario estándar" o como "Administrador". Las aplicaciones UWP tienen menos derechos de acceso que "Usuario estándar" y nunca pueden ejecutarse como "Administrador". Las aplicaciones UWP pueden solicitar capabilities adicionales para obtener algunos derechos más con permiso del usuario, pero tienen acceso limitado al sistema y a los datos del usuario. Por ejemplo, no puede leer la mayor parte del sistema de archivos, solo su ubicación instalada, una carpeta de datos de aplicación aislada y una carpeta de archivo temporal aislada. Consulte Acceso a archivos y permisos (aplicaciones de Windows Runtime) . Esto también significa que las aplicaciones UWP tienen acceso limitado a los dispositivos. Ver Descripciones generales del dispositivo y del sensor .
El Control de cuentas de usuario de Windows Vista que introdujo Usuario estándar se centró en proteger el sistema y otros datos de los usuarios en comparación con el modelo anterior "todo es administrador", pero hizo poco para proteger los archivos de datos del usuario actual ya que todas las aplicaciones podían acceder o incluso modificarlo. El aislamiento de AppContainer protege tanto el sistema como los datos y la configuración del usuario actual. Se instó a las "aplicaciones de escritorio Win32" a instalar en
C:/Program Files
que eran de solo lectura en tiempo de ejecución y para usar carpetas de datos de aplicaciones, pero no estaban obligados a hacerlo.
Despliegue de AppX. Las "aplicaciones de escritorio Win32" usan cualquier cantidad de formas de implementación, a menudo algo que usa la tecnología MSI y se ejecuta como "Administrador". Las aplicaciones UWP están empaquetadas en archivos AppX y siempre son implementadas por el sistema. No hay un "Paso de instalación personalizado" y, por lo tanto, las aplicaciones UWP no pueden instalar controladores o servicios, cambiar las ACL, etc. El sistema se encarga de implementar el Tiempo de ejecución de C / C ++ (que debe ser solo Visual C ++ 2015).
Modelo de UI . Hay una gran cantidad de marcos de UI para "aplicaciones de escritorio Win32" como WinForms, MFC, WPF, etc. La gran mayoría de estos no son compatibles con UWP porque UWP no admite ventanas clásicas de Win32, mensajes
WM_
o GDI / GDI +. Para las aplicaciones UWP, puede usar XAML con C ++ o C # code-behind, DirectX (Direct2D y / o Direct3D) con C ++ (o C # a través de ensamblajes de terceros como SharpDX), o HTML5 con JavaScript.
Por lo tanto, responder a su pregunta es extremadamente difícil, si no imposible, sin una comprensión completa de la base de códigos y las dependencias del producto.
Sé que el nuevo modelo de aplicación UWP tiene algunas limitaciones cuando se compara con las aplicaciones Win32 "tradicionales".
Tomemos Visual Studio Code como ejemplo de una aplicación de escritorio.
¿Qué características de Visual Studio Code faltaban o tenían que ser diferentes desde la perspectiva del usuario, si se trataba de una aplicación UWP?
EDITAR: He realizado exámenes para la certificación de Microsoft "Aspectos básicos del desarrollo de aplicaciones de la Tienda Windows con C #" y Exam 70-355: Plataforma universal de Windows - Datos de aplicaciones, servicios y patrones de codificación. Así que sé algo acerca de ganar rt api.
Por favor, no se moleste con respuestas como "la aplicación uwp se ejecuta en un entorno de pruebas". Son inútiles, porque no dicen nada acerca de las limitaciones desde la perspectiva de los usuarios. Tomé intencionalmente el ejemplo de la vida real, para que podamos ir concreto.
La limitación podría ser que su aplicación no admita complementos de terceros como el resaltador de sintaxis personalizado o la extensión refactorin (era una limitación de las aplicaciones de la tienda de Windows, no estoy seguro de si todavía es válida).
Otra limitación podría ser que su aplicación no puede tomar una captura de pantalla, ya que no hay una API en uwp (no estoy seguro de que sea verdad)