Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Wie Nadeldrucker per ASCII-Zeichen die Blattlänge übergeben? (https://www.delphipraxis.net/25779-wie-nadeldrucker-per-ascii-zeichen-die-blattlaenge-uebergeben.html)

daywalker-dj-k 12. Jul 2004 12:55


Wie Nadeldrucker per ASCII-Zeichen die Blattlänge übergeben?
 
hallo,
ich habe einen nadeldrucker (oki microline 393 elite), welchem ich über ascii-zeichen die einzustellende blattlänge/blattbreite übermitteln möchte.

das ändern der seitengröße über folgenden quelltext von borland klappte leider nicht:
http://community.borland.com/article...,15603,00.html
(er änderte es einfach nicht, auf der homepage steht auch "wenn der druckertreiber es unterstützt")

ich habe auch die hexadezimal- und dezimal-werte für die einzelnen längen vorliegen, falls diese einfach zu übergeben sind.

danke
gruß´
thorsten

mischerr 12. Jul 2004 22:08

Re: Wie Nadeldrucker per ASCII-Zeichen die Blattlänge überge
 
Ich kanns zwar grad nicht testen, aber probier mal folgendes:

Code:
procedure SendeESCSequenz;
const mySequenz  = #027#000#001#002#013#010; // <- Hier deine ESC-Sequenz!
var  myPrinter  : THandle;
      writtenBytes: dword;
      ok         : boolean;
begin
  ok:= false;
  myPrinter:= CreateFile('\\.\LPT1', GENERIC_WRITE, 0, nil, OPEN_EXISTING,
                         FILE_ATTRIBUTE_NORMAL, 0);
  if myPrinter<>INVALID_HANDLE_VALUE then begin
     if WriteFile(myPrinter, mySequenz[1], length(mySequenz),
                  writtenBytes, nil) then ok:= writtenBytes=length(mySequenz);
     CloseHandle(myPrinter);
  end;
  if ok then MessageDlg('Ok!', mtInformation, [mbOk], 0)
     else MessageDlg('Sorry!', mtError, [mbOk], 0);
end;
Grüsse!


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:46 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz