Einzelnen Beitrag anzeigen

Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#5

AW: Hardware ansteuern

  Alt 22. Okt 2012, 19:35
Für die Kassenladen gibt es üblicherweise String welche man per Escape schicken kann
Delphi-Quellcode:
function SendEscapeToPrinter(const PrinterName: String; Const S: AnsiString): Boolean;
type
  TPrnBuffRec = record
    bufflength: Word;
    Buff_1: array [0 .. 255] of AnsiChar;
  end;
var
  Buff: TPrnBuffRec;
  TestInt: Integer;
  OldIndex: Integer;
begin
  OldIndex := Printer.PrinterIndex;
  try
    Result := Printer.printers.IndexOf(PrinterName) > -1;
    Printer.PrinterIndex := Printer.printers.IndexOf(PrinterName);
    Printer.BeginDoc;
    TestInt := PassThrough;
    if Escape(Printer.Handle, QUERYESCSUPPORT, SizeOf(TestInt), @TestInt, nil) > 0 then
    begin
      StrPCopy(Buff.Buff_1, S);
      Buff.bufflength := StrLen(Buff.Buff_1);
      Escape(Printer.Canvas.Handle, PassThrough, 0, @Buff, nil);
      Result := True;
      Printer.EndDoc;
    end
    else
      Result := False;
  finally
    Printer.PrinterIndex := OldIndex;
  end;
end;
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat