시리얼포트 프린터기종은 STP131입니다..
LTP1으로 출력하면 잘됩니다..
헌디.. 이상하게 COM1~ COM4로 연결해서 작업하면..
에러메세지만 나오네요...
제가 코딩한 내역은 다음과 같습니다..
만약 밑에 코딩이 틀렸다면.. 다른방법이나.. 간단한 셈플소스라도
아르켜 주실수 있으면 정말정말.. 감사하겠습니다...ㅠㅠ
[에러 메세지 ] I/0 error 103
AssignFile(lst, 'LPT1'); --> 이넘을 COM1으로 바꾸어서 하면 에러나여 ㅠㅠ
ReWrite(lst);
Write(lst, #24);
Write(lst, #27#49);
if IOResult <> 0 then begin
MessageDlg(' 프린터 상태를 확인하세요. !! ', mtWarning, [mbOk], 0);
Close;
end;
Writeln(lst,'---------------------------------------');
Writeln(lst,'123456789012345678901234567890123456789');
Writeln(lst,'영수증 프린터 테스트 프로그램입니다.!!!');
Writeln(lst,'---------------------------------------');
Writeln(lst);
writeln(lst,'상 호 : ','XXXXXXXXX');
writeln(lst,'사업번호 : ','XXXXXXXXXXXXX');
writeln(lst,'전화번호 : ','017-853-8796');
writeln(lst,'주 소 지 : ','XXXXXXXXXXX');
writeln(lst,' ','XXXXXXXXXXXX');
Writeln(lst);
writeln(lst,'주문번호 : ','테이블1-4');
writeln(lst,'주문일시 : ', FormatDateTime('yyyy-mm-dd hh:mm:ss',Now));
writeln(lst,'------------------------------------------'); {세목}
writeln(lst,' 코드 메 뉴 명 수량 금 액 '); {세목}
writeln(lst,'------------------------------------------');
writeln(lst,' 0001 하이트생맥주350ml 5 12,000원');
writeln(lst,' 0002 노가리셋트2 1 20,000원');
writeln(lst,' 0003 돈까스안주 1 10,000원');
writeln(lst,'------------------------------------------');
writeln(lst,' 합계 42,000원');
writeln(lst,'------------------------------------------');
writeln(lst,' *** 이용해 주셔서 감사합니다 *** ');
Writeln(lst);
Write(lst,#7); //Beep...
Write(lst,#27#80#1); //커팅...
Closefile(lst);
COM 포트는 컴포넌트를 사용하시면 됩니다.
한델 자료실에 있는 CPort 좋습니다.
포트와 컴포넌트간 속도, 흐름제어 등을 맞추시면 직방입니다.
그리고 프린터 쪽은 아무래도 기종도 다양하고 약간씩 옵션처리를
해야 할 부분이 있기 때문에 함수나 프로시저를 따로 만들어서 처리하심이
나중을 위해서 좋을듯...
그 함수에 출력 포트를 인자로 보내서 파일출력, 컴포넌트 출력을 하시는게
좋을겁니다.