Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Impresión
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-06-2014
engranaje engranaje is offline
Miembro
 
Registrado: may 2011
Posts: 163
Poder: 16
engranaje Va por buen camino
has probado a modificar esto:
Código Delphi [-]
  DocInfo.pOutputFile := nil;

para pasar como poutputfile el puerto de la impresora en lugar de nulo?
mas o menos asi:

Código Delphi [-]
  DocInfo.pOutputFile := sPort;

Última edición por engranaje fecha: 04-06-2014 a las 13:16:58.
Responder Con Cita
  #2  
Antiguo 04-06-2014
comba comba is offline
Miembro
 
Registrado: feb 2004
Posts: 89
Poder: 23
comba Va por buen camino
Hola engranaje

He modificado lo que me habias comentado pero me da este error.

E2010 Incompatible types: 'PAnsiChar' and 'array[0..255] of Char'
Responder Con Cita
  #3  
Antiguo 04-06-2014
engranaje engranaje is offline
Miembro
 
Registrado: may 2011
Posts: 163
Poder: 16
engranaje Va por buen camino
cierto, puedes probar con:
Código Delphi [-]
  DocInfo.pOutputFile := @sPort;

Aunque lo cierto es que creo que es mejor trabajar directamente sobr Pchar, declarando las variables asi:

Código Delphi [-]
 
var
   pDevice :PChar;
   PDriver :Pchar;
   pPort   :Pchar;
   hdMode  : Thandle;

cargandolas asi:
Código Delphi [-]
  getMem(pDevice, cchDeviceName);
  getmem(pDriver,MAX_PATH);
  GetMem(pPort,MAX_PATH);
  printer.GetPrinter(pDevice,pDriver,pPort,hDMode);

y liberando la memoria cuando corresponda:
Código Delphi [-]
  if assigned(pDevice) then 
    freeMem(pDevice, cchDeviceName);
  if assigned(pDevice) then   
    freemem(pDriver,MAX_PATH);  
  if assigned(pDevice) then 
    freeMem(pPort,MAX_PATH);
Responder Con Cita
  #4  
Antiguo 05-06-2014
Avatar de ElKurgan
[ElKurgan] ElKurgan is offline
Miembro Premium
 
Registrado: nov 2005
Posts: 1.242
Poder: 22
ElKurgan Va camino a la fama
Hola, Comba.

He probado tu código en un XE2 y en un XE5, sin cambiar nada, y en ambos casos ha funcionado correctamente.

Eso si, no tengo ninguna impresora de tickets, pero lo he lanzado a una LaserJet 4200 y ha ido de lujo.

El problema seguramente lo tendrás en otro sitio.

Saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
seleccion de impresora y letra de la impresora emeceuy Impresión 6 13-08-2017 14:11:05
Mandar a Puerto de Impresora Carliviris Varios 1 11-01-2007 21:31:29
Obtener un fichero adjunto a un nodo de un fichero XML muntasil Internet 0 18-07-2006 12:57:57
Como mandar datos a la impresora Felix el Gato JAVA 3 27-04-2004 22:13:11
Mandar dos impresiones y cambiar de impresora Quick Report MRSAM Impresión 2 18-02-2004 11:18:51


La franja horaria es GMT +2. Ahora son las 23:29:44.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi