Estoy trabajando en un proyecto en este momento que implica recibir un mensaje de otra aplicación, formatear el contenido de ese mensaje y enviarlo a una impresora. La tecnología de elección es el servicio de Windows C#. El resultado podría llamarse informe, supongo, pero no es necesario un motor de informes. Un motor de plantillas simple, como StringTemplate, o incluso XSLT de salida de HTML estaría bien. El problema que tengo es encontrar una forma gratuita de imprimir este tipo de resultados desde un servicio. Dado que parece que funcionará, estoy trabajando en un prototipo usando el RDLC de Microsoft, rellenando un informe local y luego presentándolo como una imagen a una secuencia de memoria, que luego imprimiré. Los problemas con eso son:Impresión desde un servicio .NET
- La impresión de varias páginas será un gran dolor de cabeza.
- todavía tiene que utilizar PrintDocument para imprimir la secuencia de memoria, que no se sostiene en un servicio de Windows (aunque puede trabajar - no han llegado tan lejos con el prototipo aún)
- Si los datos que llegan a través de los cambios, no tengo para cambiar el conjunto de datos y la clase en la que se deserializan los datos. malo malo malo.
¿Alguien ha tenido que hacer algo remotamente así? ¿Algún consejo? Ya hice una pregunta sobre la impresión de HTML sin la intervención del usuario, y después de perder unos 3 días en eso, he llegado a la conclusión de que no se puede hacer, al menos no con ninguna herramienta disponible de manera gratuita.
Toda ayuda es apreciada.
EDITAR: Estamos en la versión 2.0 del .NET framework.
GDI + nunca fue diseñado/probado para funcionar en contexto de servicio. Por eso no funciona. Deberías usar GDI y funcionar para dibujar. Consulte este documento para encontrar llamadas Win32 equivalentes: http://msdn.microsoft.com/en-us/library/aa302340.aspx#win32map_printingfunctions – Signcodeindie