PDA

Ver la Versión Completa : imprimir en impresora punto de venta


carlosjimenez
22-12-2010, 21:46:34
Hola a todos me gustaria dentro de lo posible que me ayuden con un inconveniente ke tengo kiero imprimir en una impresora punto de venta, antes utilizaba el delphi V y ahora uso 2007 y el componente no es el mismo y no lo tengo si alguien me puede ayudar con eso ya que no puedo utilizar el reporteador para este tipo de impresion

gracias de antemano

manuc
24-12-2010, 13:03:23
Hola Carlos,

Para que te podamos ayudar, tendrías que decirnos qué tipo de impresora tienes (matricial, térmica, etc) y qué tipo de puerto vas a utilizar para imprimir (usb, puerto serie, paralelo, etc).

Un saludo.

carlosjimenez
24-12-2010, 15:20:58
Gracias hermano por atender mi llamado, el puerto paralelo, y la imprera que se utiliza es de la matricial pero de punto de venta(pequeña) por cierto no sabia que habia diferencia para el componente entre matricial y termina, cuando usaba delphi V no importaba si era matricial o termica la impresion salia normal. antes utilizaba un componente llamado dlgimprimir, pero al llevar los programas al delphi2007 no me funciona

manuc
27-12-2010, 10:02:10
Hola Carlos,

De nada hombre, para eso estamos.

Prueba con este código:

var
hPrinter: DWord;
DocInfo: TDocInfo1;
dwBytesWritten: DWord;
ImpCuerpo:String;
impTitulo:String;
Impresora:String;
begin
ImpCuerpo := 'Cuerpo a imprimir...';
Impresora := 'pon aquí el nombre de tu impresora en windows';
impTitulo := 'Prueba de impresión con RawData';

OpenPrinter(PChar(Impresora), hPrinter, nil);
DocInfo.pOutputFile:= nil;
DocInfo.pDatatype:= 'RAW';
DocInfo.pDocName:= PChar(impTitulo);
StartDocPrinter(hPrinter, 1, @DocInfo);
StartPagePrinter(hPrinter);
WritePrinter(hPrinter, Pointer(ImpCuerpo), Length(ImpCuerpo), dwBytesWritten);
EndPagePrinter(hPrinter);
EndDocPrinter(hPrinter);
ClosePrinter(hPrinter);


En los uses tienes que insertar WinSpool.

Espero que te ayude.

Un saludo.