c# .net windows-8 windows-store-apps labview

c# - Agregar.NET Framework DLL como referencia a la aplicación de la tienda de Windows



windows-8 windows-store-apps (2)

La "solución alternativa" es crear una versión de la biblioteca que desee como una biblioteca portátil. Eso es todo al respecto. Simplemente no tienes el marco completo disponible.

La dificultad que implica la conversión de una biblioteca de clases en una biblioteca de clases portátil depende en gran medida de lo que hace la biblioteca y de las áreas de BCL que utiliza.

Estoy trabajando en un proyecto de aplicación de Windows Store donde quiero leer datos de medición de temperatura simples de un DAQ de National Instruments. Sin embargo, la biblioteca de DLL para el DAQ está en formato .NETFramework 4.0 y al agregar esto como referencia a mi proyecto de aplicación de la tienda de Windows , aparece el siguiente error: "El proyecto apunta a ''.NetFramework'' mientras que el archivo hace referencia a ''.NetCore''"

Buscando en la red, descubrí que la aplicación de la tienda de Windows debe usar referencias a otro binario de .NETCore o Portable Library, no puede hacer referencia a una biblioteca completa de .NET 4.0. Supongo que hay muchas personas que tienen problemas similares, así que me pregunto si hay algún truco para andar por ahí.


Si no puede utilizar una biblioteca suministrada por otra persona, y es poco probable que los intentos de presionarlos para que produzcan una versión portátil tengan éxito, entonces lo único que puede hacer es buscar otro lugar para alojar la DLL y luego comunicarse. Con lo que sea que lo aloje. Por ejemplo, para algunos escenarios puede ser posible escribir, digamos, un servicio basado en API Web ASP.NET, que podrá usar el completo .NET Framework y, por lo tanto, podrá usar la DLL.

Obviamente, esto cambia un problema por otro: ahora necesita tener una máquina que pueda ejecutar un servicio web para usted. (Y desafortunadamente, creo que Microsoft no admite oficialmente la ejecución de esa aplicación web en la misma máquina que está ejecutando la aplicación de la Tienda Windows. Es posible que pueda hacer que funcione en su caja de desarrollo, pero no podrá implementar la aplicación web a través de la Tienda Windows).

Y no hay una ruta fácil aquí: tendrá que escribir una capa que exponga todo lo que necesita a través de los servicios HTTP y el código del lado del cliente para consumir esos servicios. Y también deberá pensar cómo asegurar el acceso al servicio.

Puede ser más fácil suplicar a su proveedor ...

En teoría, si sucede que la biblioteca no está usando nada fuera del perfil .NET central, podría usar ILDASM e ILASM para descompilar y volver a compilar el código, convirtiéndolo en una biblioteca portátil antes de hacerlo. . Sin embargo, es muy probable que esto infrinja su contrato de licencia si se trata de un código comercial y, en cualquier caso, es muy probable que no funcione.