Principales respuestas
IMPRESION POS

Pregunta
-
Estoy haciendo un web aplication y necesito imprimir en esas impresoras pos, realice el siguiente codigo pero tengo un problema
try { EnvioDatosImpresora = new StreamReader("D:\\prueba.txt"); try { //Definimos fuente predeterminada del documento FuenteImpresion = new Font("Arial", 10); //Definimos variable PrintDoc de tipo PrintDocument PrintDocument PrintDoc = new PrintDocument(); //Recolecto los datos y la configuracion de la impresion para enviarla a la impresora PrintDoc.PrintPage += new PrintPageEventHandler(Imprimir_Datos); //Enviamos los datos de impresion a la impresora PrintDoc.Print(); } finally { EnvioDatosImpresora.Close(); } } catch(Exception ex) { Response.Write("Error al imprimir: " + ex.Message); }
el problema es que en mi ambiente local imprimo ok, pero al subir el aplicativo al servidor me di cuenta que busca la impresora en el servidor y no en el cliente, me pueden indicar como puedo solucionar esto, es decir que me falta para que busque la impresora del cliente y no del server?
jueves, 4 de febrero de 2016 3:01
Respuestas
-
>>pero al subir el aplicativo al servidor me di cuenta que busca la impresora en el servidor y no en el cliente,
claro, cuando desarrollas web el codigo .net ejecuta del lado servidor
>>me pueden indicar como puedo solucionar esto
si el codigo es .net no imprimira nunca del lado cliente, tienes que conectar la impresora en el servidor
Quizas una solucion que se me ocurre es que puedas crear algun cliente que instales local en la pc del usuario y se comunique con el servidor mediente SignalR, de esta forma el servidor le pueda enviar mediante "push server" mediante websocket la accion de impresion
estando esta aplciacion en el cliente si tendra acceso a las impresoras locales
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Propuesto como respuesta Sergio ParraModerator lunes, 8 de febrero de 2016 10:48
- Marcado como respuesta Sergio ParraModerator martes, 9 de febrero de 2016 13:51
jueves, 4 de febrero de 2016 8:42 -
Puedes hacerte un componente ActiveX para ello. Lo malo es que deberías configurar la seguridad de los nevagadores web más baja para que te permita ejecutar ActiveX.
O si lo que quieres es imprimir la página actual puedes usar a través de Javascript
Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos
- Propuesto como respuesta Sergio ParraModerator lunes, 8 de febrero de 2016 10:48
- Marcado como respuesta Sergio ParraModerator martes, 9 de febrero de 2016 13:51
sábado, 6 de febrero de 2016 12:47Moderador
Todas las respuestas
-
>>pero al subir el aplicativo al servidor me di cuenta que busca la impresora en el servidor y no en el cliente,
claro, cuando desarrollas web el codigo .net ejecuta del lado servidor
>>me pueden indicar como puedo solucionar esto
si el codigo es .net no imprimira nunca del lado cliente, tienes que conectar la impresora en el servidor
Quizas una solucion que se me ocurre es que puedas crear algun cliente que instales local en la pc del usuario y se comunique con el servidor mediente SignalR, de esta forma el servidor le pueda enviar mediante "push server" mediante websocket la accion de impresion
estando esta aplciacion en el cliente si tendra acceso a las impresoras locales
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Propuesto como respuesta Sergio ParraModerator lunes, 8 de febrero de 2016 10:48
- Marcado como respuesta Sergio ParraModerator martes, 9 de febrero de 2016 13:51
jueves, 4 de febrero de 2016 8:42 -
Puedes hacerte un componente ActiveX para ello. Lo malo es que deberías configurar la seguridad de los nevagadores web más baja para que te permita ejecutar ActiveX.
O si lo que quieres es imprimir la página actual puedes usar a través de Javascript
Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos
- Propuesto como respuesta Sergio ParraModerator lunes, 8 de febrero de 2016 10:48
- Marcado como respuesta Sergio ParraModerator martes, 9 de febrero de 2016 13:51
sábado, 6 de febrero de 2016 12:47Moderador