Control webBrowser como interfaz de usuario
Primero unas cuantas definiciones para dejar las cosas claras.
Usuario: Una persona en vivo, utilizando el software.
Cliente: una empresa que paga por una versión personalizada de nuestro software para sus usuarios.
Actualmente tenemos algunas aplicaciones que requerirán cambios significativos en la interfaz de usuario según el cliente al que pertenezca. Actualmente tenemos una compilación separada para cada cliente, pero a medida que aumenta la cantidad de clientes, es cada vez más difícil administrar todos esos lanzamientos separados.
Mi objetivo es cambiar a un único cliente genérico que se puede personalizar dinámicamente según quién se está conectando. Dado que nuestro software requiere una conexión a Internet de todos modos (usa los servicios web de forma extensiva) Estaba contemplando el uso de un control WebBrowser en .NET y permitiéndole interactuar (a través de ObjectForScripting) con el hardware requerido en la computadora.
Luego, toda la interfaz de usuario se escribe en HTML / JavaScript y se almacena en el servidor, lo que hace que la distribución y el mantenimiento de las nuevas interfaces de usuario sean triviales. El cliente genérico es poco más que un navegador web personalizado que sabe cómo comunicarse con nuestros dispositivos de hardware y se le puede indicar que lo haga a través de JavaScript.
Estoy viendo muchas ventajas en este enfoque y no demasiadas desventajas. ¿Qué me estoy perdiendo? ¿Por qué NO debo ir en esta dirección?