영수증 프린터는 삼성 STP-131 일 경우 사용하는 코드 입니다.
정말 어렵게 알아냈어요 (ㅠ.ㅠ)
String yung_su;
yung_su = "\x1b\x40"; //초기화
yung_su += "이용해 주셔서 감사합니다.\n";
yung_su += "환불 및 반품시 영수증이 필요하오니 \n";
yung_su += "반품 및 교환은 구입일로 부터 1주일 이내\n";
yung_su += "\x0a\x0a\x0a\x0a"; //라인 갱신
yung_su += "\x1b\x69"; //영수증 컷팅
yung_su += "\x1b\x70\x30\20\80"; //돈통열기
memset(yung_su.c_str(),0x00,sizeof(yung_su.c_str()));
memcpy(yung_su.c_str(), yung_su.data(), yung_su.Length());
static HANDLE hFile;
DWORD dwWri;
hFile = CreateFile("LPT1",GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED,NULL);
WriteFile(hFile,yung_su.c_str(),yung_su.Length(),&dwWri,NULL);
COMSTAT comStat;
ClearCommError(hFile,&dwWri,&comStat);
PurgeComm(hFile, PURGE_TXABORT | PURGE_RXABORT | PURGE_TXCLEAR | PURGE_RXCLEAR);
CloseHandle(hFile);
주의할 사항은 돈통을 연 후 캐리지리턴의 실행이 없어야 합니다.
코드가 win32api와 c빌더 코드가 짬뽕입니당...
|