![]() |
Setsames Verhalten von TFileStream
Hallo zusammen,
ich habe mit folgendem Code meine Probleme und hoffe ihr könnt mir helfen :
Delphi-Quellcode:
Dieser Code soll die Steuersequenzen aus dem memo_test Memofeld an den Drucker senden.
Procedure Tfrm_main.SendtoPrinter(var Stream: TFileStream; var PrintStr: String);
begin CharToOEM(@Printstr[1], @Printstr[1]); Stream.write(PrintStr[1], length(Printstr)+1); end; procedure Tfrm_main.btn_print_labelClick(Sender: TObject); var Stream: TFileStream; temp : String; begin Stream := TFileStream.Create('LPT1', fmOpenWrite); temp := memo_test.Text; sendtoprinter(Stream, temp); end; Mein Problem ist nun Drücke ich den Knopf passiert nichts. :gruebel: Sobald ich aber meine Anwendung schliesse, Druckt er das Label aus das mit den Steuersequenzen generiert wurde (Barecode). Weis vielleicht jemand wie ich es erreichen kann das er die Daten sofort sendet (das Label Druckt). Ich bin total am Verzweifeln HILFE :wall: |
Re: Setsames Verhalten von TFileStream
Moin Sascha,
ich vermute mal, dass es daran liegt, dass Du die Datei nicht schliesst. Nach dem SendToPrinter fehlt noch ein FreeAndNil(Stream), und wenn Du das Programm beendest geschieht das automatisch. Ausserdem solltest Du das ganze in den üblichen Resourcenschutzblock einbinden.
Delphi-Quellcode:
BTW: Belegte Resourcen sollte man auch immer wieder gezielt freigeben.
begin
Stream := TFileStream.Create('LPT1', fmOpenWrite); try temp := memo_test.Text; sendtoprinter(Stream, temp); finally FreeAndNil(Stream); end; end; [EDIT] TFileStream verhält sich also völlig korrekt ;-) [/EDIT] |
Re: Setsames Verhalten von TFileStream
eventuell liegts daran das du den Stream nicht freigibst und dieser eben erst dann beim schließen freigegeben wird und somit der vorgang abgeschlossen wird. Irgendwann hatte ich mal das gleiche problem wie du, weiß aber leider nicht mehr wie ichs gelöst hab.
|
Re: Setsames Verhalten von TFileStream
Hi,
danke wede das morgen direkt mal ausprobieren. |
Re: Setsames Verhalten von TFileStream
Hi,
habe es eben getestet und es funktioniert. :lol: DANKE !!!!!!!!!!!!!!!!!!! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:33 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 by Thomas Breitkreuz