KR102226608B1 - Pos용 프린터 공유 방법 및 이를 수행하는 장치 - Google Patents

Pos용 프린터 공유 방법 및 이를 수행하는 장치 Download PDF

Info

Publication number
KR102226608B1
KR102226608B1 KR1020200114110A KR20200114110A KR102226608B1 KR 102226608 B1 KR102226608 B1 KR 102226608B1 KR 1020200114110 A KR1020200114110 A KR 1020200114110A KR 20200114110 A KR20200114110 A KR 20200114110A KR 102226608 B1 KR102226608 B1 KR 102226608B1
Authority
KR
South Korea
Prior art keywords
pos
comfort
api
virtual
printer
Prior art date
Application number
KR1020200114110A
Other languages
English (en)
Inventor
신동열
심기준
Original Assignee
(주)시큐어포인트
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)시큐어포인트 filed Critical (주)시큐어포인트
Priority to KR1020200114110A priority Critical patent/KR102226608B1/ko
Application granted granted Critical
Publication of KR102226608B1 publication Critical patent/KR102226608B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1236Connection management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1259Print job monitoring, e.g. job status
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

본 발명의 일 실시예에 따른 PC 컴포트 모니터링을 통한 POS용 프린터 공유장치는 가상 컴포트를 할당하는 매니저 API; 각각이 상기 매니저 API로부터 프린트 데이터를 출력하기 위한 가상 컴포트를 제공받는 복수 개의 POS API; 및 상기 복수 개의 POS API 중 어느 하나와 물리적 컴포트로 접속되는 POS 프린터를 포함하고, 상기 매니저 API는 가상 컴포트가 할당된 POS API로부터 프린트 데이터 출력신호를 수신하면, 상기 POS 프린터 및 해당 POS API에서 가상 컴포트가 물리적 컴포트로 인식되도록 상기 POS API 및 상기 POS 프린터의 POS 프린트 프로그램의 명령어를 제어하는 것을 특징으로 한다.

Description

POS용 프린터 공유 방법 및 이를 수행하는 장치{Method for sharing POS printers and devices for sharing POS printers}
본 발명은 POS용 프린터 공유 방법 및 이를 수행하는 장치에 관한 것이다.
POS 시스템은 레지 카운터에 설치된 POS 단말장치와 POS 단말장치의 통신 포트에 접속된 프린터를 구비한다. POS 단말장치에서는, 영수증을 인쇄하기 위한 POS 애플리케이션과, 프린터를 구동 제어하는 프린터 드라이버가 동작한다. 프린터 드라이버는, POS 애플리케이션이 생성하는 애플리케이션 데이터에 기초하여 프린터네 인쇄를 행하게 하는 인쇄 데이터를 생성하고, 당해 인쇄 데이터를 프린터에 송신함으로써 프린터를 구동 제어한다.
POS 단말장치에서 동작하는 프린터 드라이버로서는, Unified POS의 사양서에 준거한 전용 드라이버가 이용되는 것이 일반적이다. 이러한 전용 드라이버는, 특허문헌 1에 기재되어 있는 바와 같이, POS 애플리케이션으로부터 최초의 이용 개시 요구를 수신하면, POS 애플리케이션을 위해, 통신 포트를 점유한다. 즉, 전용 드라이버는, POS 애플리케이션으로부터 애플리케이션 데이터만을 프린터로 인쇄하는 것이 가능한 상태로 한다. 또한 전용 드라이버는 POS 애플리케이션이 동작하는 동안, 통신 포트를 점유한 상태를 유지한다. 이에 의해, POS 시스템은 영수증의 인쇄 처리가 중단되는 것을 방지한다.
일본특허공보 제5397162호
본 발명이 해결하고자 하는 과제는 종래의 문제점을 해결할 수 있는 PC 컴포트 모니터링을 통한 POS용 프린터 공유 방법 및 이를 수행하는 시스템을 제공하는 데 그 목적이 있다.
본 출원이 해결하고다 하는 과제가 상술한 과제로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 출원이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 PC 컴포트 모니터링을 통한 POS용프린터 공유 장치는 가상 컴포트를 할당하는 매니저 API; 각각이 상기 매니저 API로부터 프린트 데이터를 출력하기 위한 가상 컴포트를 제공받는 복수 개의 POS API; 및 상기 복수 개의 POS API 중 어느 하나와 물리적 컴포트로 접속되는 POS 프린터를 포함하고, 상기 매니저 API는 가상 컴포트가 할당된 POS API로부터 프린트 데이터 출력신호를 수신하면, 상기 POS 프린터 및 해당 POS API에서 가상 컴포트가 물리적 컴포트로 인식되도록 상기 POS API 및 상기 POS 프린터의 POS 프린트 프로그램의 명령어를 제어하고, 상기 매니저 API는 사용자로부터 상기 가상 컴포트를 할당받을 적어도 하나 이상의 POS API의 확장자를 수신한 후, 수신한 확장자의 개수에 따른 가상 컴포트를 할당하는 가상포트 할당부; 상기 물리적 컴포트의 포트넘버 및 상기 물리적 컴포트와 접속된 POS API의 확장자를 인식하는 확장자 인식부; 상기 POS 프린트 프로그램의 실행상태 및 출력대기 상태를 모니터링하는 모니터링부; 상기 가상 컴포트를 할당받은 복수 개의 POS API 중 어느 하나로부터 프린트 출력신호를 수신할 경우, 상기 어느 하나의 POS API의 가상 컴포트의 넘버를 상기 물리적 컴포트의 넘버로 가변시켜 상기 POS API 및 상기 POS 프린터의 POS 프린트 프로그램으로 제공하는 컴포트 넘버링 가변부를 포함하고, 상기 컴포트 넘버링 가변부는 상기 모니터링부로부터 상기 POS 프린트 프로그램의 출력대기상태가 "0"일 경우 실행되는 것을 특징으로 한다.
삭제
삭제
일 실시예에서, 상기 매니저 API는 가상 컴포트가 할당된 적어도 하나 이상의 POS API의 개수, 확장자명, 물리적 컴포트와 연결된 POS API의 확장자명을 사용자에게 표시하는 것을 특징으로 한다.
일 실시예에서, 상기 컴포트 넘버링 가변부는 API hooking 알고리즘을 기반으로 실행되는 것을 특징으로 한다.
상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 PC 컴포트 모니터링을 통한 POS용 프린터 공유장치를 이용한 POS용 프린터 공유방법은 가상포트 할당부에서 사용자로부터 가상 컴포트를 할당받을 적어도 하나 이상의 POS API의 확장자를 수신하는 단계; 상기 가상포트 할당부에서 수신한 확장자의 개수에 따른 가상포트를 할당하는 단계; 확장자 인식부에서 POS 프린트의 물리적 컴포트의 포트넘버 및 상기 물리적 컴포트와 접속된 POS API의 확장자를 인식하는 단계; 모니터링부에서 POS 프린트 프로그램의 실행상태 및 출력대기 상태를 모니터링하는 단계; 컴포트 넘버링 가변부에서 상기 가상 컴포트를 할당받은 적어도 하나 이상의 POS API 중 어느 하나로부터 프린트 출력신호를 수신할 경우, 상기 어느 하나의 POS API의 가상 컴포트의 넘버를 상기 물리적 컴포트의 넘버로 가변시켜 상기 POS API 및 상기 POS 프린터의 POS 프린트 프로그램으로 제공하는 단계; 상기 POS 프린터의 POS 프린트 프로그램에서 상기 가상 컴포트에서 전송된 프린트 데이터를 출력하는 단계를 포함한다.
본 발명의 일 실시예에 따른 PC 컴포트 모니터링을 통한 POS용 프린터 공유 방법 및 이를 수행하는 장치를 이용하면, POS 단말 내의 복수 개의 POS API가 1대의 POS 프린터를 공유할 수 있다는 이점이 있고, 상술한 이점을 통해 POS API 마다 설치했던 POS 프린터의 설치비용을 해결할 수 있다는 이점이 있다.
본 출원의 효과가 상술한 효과들로 제한되는 것은 아니며, 언급되지 아니한 효과들은 본 명세서 및 첨부된 도면으로부터 본 출원이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 POS용 프린터 공유 장치의 세부구성도이다.
도 2는 도 1에 매니지 API의 세부구성을 나타낸 블록도이다.
도 3은 API 후킹을 설명하기 위한 예시도이다.
도 4는 본 발명의 일 실시예에 따른 POS용 프린터 공유 장치의 흐름도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 명세서에서 사용되는 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 공정, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 공정, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미가 있는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부된 도면을 참조하여 본 발명을 더욱 상세하게 설명한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정하여 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여, 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 또한, 사용되는 기술 용어 및 과학 용어에 있어서 다른 정의가 없다면, 이 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 통상적으로 이해하고 있는 의미를 가지며, 하기의 설명 및 첨부 도면에서 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 설명은 생략한다.
다음에 소개되는 도면들은 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 예로서 제공되는 것이다. 따라서, 본 발명은 이하 제시되는 도면들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 또한, 명세서 전반에 걸쳐서 동일한 참조번호들은 동일한 구성요소들을 나타낸다. 도면들 중 동일한 구성요소들은 가능한 한 어느 곳에서든지 동일한 부호들로 나타내고 있음에 유의해야 한다.
이하, 첨부된 도면들에 기초하여 본 발명의 일 실시예에 따른 PC 컴포트 모니터링을 통한 POS용 프린터 공유 방법 및 이를 수행하는 장치을 보다 상세하게 설명하도록 한다.
도 1은 본 발명의 일 실시예에 따른 POS용 프린터 공유 장치의 세부구성도이고, 도 2는 도 1에 매니지 API의 세부구성을 나타낸 블록도이고, 도 3은 API 후킹을 설명하기 위한 예시도이다.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 컴포트 모니터링을 이용한 POS용 프린터 공유장치(100)는 POS 단말(200) 및 POS용 프린터(300)를 포함한다.
먼저, 본 발명을 설명하기에 앞서, POS 단말과 POS용 프린터 간의 동작관계를 간략하게 설명하도록 한다.
POS 단말은 내부에 설치된 복수 개의 POS API 중 어느 하나와 POS용 프린터의 물리적 포트와 접속되도록 실행된다.
따라서, 일반적으로는 POS 단말 내에 복수 개의 POS API가 존재하더라도 이중 어느 하나의 POS API에서 실행된 결과값만을 POS용 프린터에서 출력할 수 밖에 없다.
가령, 일반 배달전문점의 경우, POS 단말 내에 “요기요” 및 “배달의 민족” rhk 같이 2개의 POS API를 이용할 경우, 각각의 POS API와 1:1로 연동하는 POS용 프린터를 설치해야 한다는 문제가 있다.
이에 본 발명은 POS 단말 내에 복수 개의 POS API가 존재하더러도 1대의 POS용 프린터에서 복수 개의 POS API의 실행값을 출력할 수 있는 장치 및 방법을 설명하고자 한다.
먼저, 본 발명의 일 실시예에 따른 상기 POS 단말(10)은 복수 개의 POS용 API(200) 및 매니저 API(300)를 포함하는 단말일 수 있다.
상기 복수 개의 POS용 API(200)는 POS 단말(10)에서 실행되는 응용프로그램으로서, 서로 다른 확장자를 갖는 프로그램일 수 있다.
참고로, 상기 복수 개의 POS API(200)는 각각이 상기 매니저 API(200)로부터 프린트 데이터(print data)를 출력하기 위한 가상 컴포트(VCP)를 제공받으며, 상기 가상 컴포트(VCP)에 대한 설명은 후술하도록 한다.
상기 매니저 API(300)는 가상 컴포트(Virtual Com Port; 이하, VCP)를 할당하는 응용프로그램일 수 있다.
상기 매니저 API(300)는 가상 컴포트가 할당된 POS API로부터 프린트 데이터 출력신호를 수신하면, 상기 POS 프린터 및 해당 POS API에서 가상 컴포트가 물리적 컴포트로 인식되도록 상기 POS API 및 상기 POS 프린터의 POS 프린트 프로그램의 명령어를 제어한다.
보다 구체적으로, 상기 매니저 API(300)는 가상포트 할당부(310), 확장자 인식부(320), 모니터링부(330), 컴포트 넘버링 가변부(340)를 포함한다.
상기 가상포트 할당부(310)는 사용자로부터 상기 가상포트를 할당받을 적어도 하나 이상의 POS API의 확장자를 수신한 후, 수신한 확장자의 개수에 따른 가상포트를 할당한다.
상기 확장자 인식부(320)는 상기 물리적 컴포트의 포트넘버 및 상기 물리적 컴포트와 접속된 POS API의 확장자를 인식한다.
상기 모니터링부(330)는 상기 POS 프린트 프로그램의 실행상태 및 출력대기 상태를 모니터링한다.
상기 컴포트 넘버링 가변부(340)는 상기 가상 컴포트를 할당받은 POS API로부터 프린트 출력신호를 수신할 경우, 상기 가상 컴포트의 넘버를 상기 물리적 컴포트의 넘버로 가변시켜 상기 상기 POS API 및 상기 POS 프린터의 POS 프린트 프로그램으로 제공한다. 이때, 컴포트 넘버링 가변부(340)는 가상포트가 할당된 POS용 API의 시작주소 및 가상포트 넘버를 테이블에 등록관리한다.
여기서, 상기 컴포트 넘버링 가변부(340)는 상기 모니터링부로부터 상기 POS 프린트 프로그램의 출력대기상태가 “0”일 경우 실행된다.
상기 컴포트 넘버링 가변부(340)는 API hooking 알고리즘을 기반으로 실행된다. 참고로, API hooking은 실행 흐름을 변경하고, 원래 동작하는 기능을 다른 기능으로 바꿔 동작하도록 하는 방법을 의미한다.
일 예로, 모든 프로세스에는 기본적으로 kernel32.dll이 로딩되고, kernel32.dll은 ntdll.dll을 로딩합니다.
도 3을 참조, 프로세스에서 정상적인 호출일 경우, CreateFile()을 호출한다면, Kernel32.dll에서 CreateFile()을 실행하게 되나, 후킹이 된 경우 CreateFile()을 호출하면, Hook.dll에서 가로채서 Hooking()을 실행하게 되고, Kernel32.dll에서 CreateFile()을 호출하게 됩니다.
즉, 본 발명의 컴포트 넘버링 가변부(340)는 POS 프린터의 물리적 컴포트와 연결된 POS용 API의 플린트 출력이 “0”일 경우에, 가상 포트가 할당된 POS용 API로부터 프린트 출력신호를 수신하면, 가상 포트가 할당된 POS 용 API의 가상포트 넘버를 물리적 포트의 넘버로 수정한 후, 수정결과를 해당 POS용 API 및 POS 프린터의 프로그램에 휘발성 형태로 수정변경한다.
따라서, 가변포트가 할당된 POS용 API는 가변포트의 넘버를 POS 프린터의 물리적 포트로 인식하고, POS 프린터는 POS용 API를 프린트 출력자로 인식한다.
한편, 상기 매니저 API(300)는 가상 컴포트가 할당된 적어도 하나 이상의 POS API의 개수, 확장자명, 물리적 컴포트와 연결된 POS API의 확장자명을 사용자에게 표시하기 위한 인터페이스를 제공할 수 있다.
다음으로, POS 프린터(20)는 상기 복수 개의 POS API(200) 중 어느 하나와 물리적 컴포트(Physical Com Port; 이하, PCP)로 1:1 접속되어, 물리적으로 접속된 POS용 API의 프린트 데이터를 출력하는 구성일 수 있다. 이때, 상기 POS 프린터(20)는 물리적 컴포트(PCP)와 1:1로 접속된 POS용 API의 확장자를 출력자로 등록한다.
도 4는 본 발명의 일 실시예에 따른 POS용 프린터 공유장치를 이용한 POS용 프린터 공유방법을 설명한 흐름도이다.
도 4에 도시된 방법은 도 1에 도시된 PC 컴포트 모니터링을 통한 POS용 프린터 공유장치를 통해 수행될 수 있다.
먼저, 본 발명의 일 실시예에 따른 POS용 프린터 공유장치를 이용한 POS용 프린터 공유방법(S700)은 가상포트 할당부(310)에서 사용자로부터 가상포트를 할당받을 적어도 하나 이상의 POS API의 확장자를 수신(S710)한다.
이후, 상기 가상포트 할당부(310)에서 수신한 확장자의 개수에 따른 가상포트를 할당(S720)하고, 확장자 인식부(320)에서 POS 프린트(20)의 물리적 컴포트의 포트넘버 및 상기 물리적 컴포트와 접속된 POS API의 확장자를 인식(S730)한다. 이후, 모니터링부(330)에서 POS 프린트 프로그램의 실행상태 및 출력대기 상태를 모니터링(S740)하고, 컴포트 넘버링 가변부(340)에서 상기 가상 컴포트를 할당받은 POS API로부터 프린트 출력신호를 수신할 경우, 상기 가상 컴포트의 넘버를 상기 물리적 컴포트의 넘버로 가변시켜 상기 상기 POS API 및 상기 POS 프린터의 POS 프린트 프로그램으로 제공(S750)하면, 상기 POS 프린터의 POS 프린트 프로그램에서 가상 컴포트로 전송된 프린트 데이터를 출력(S760)한다.
따라서, 본 발명의 일 실시예에 따른 PC 컴포트 모니터링을 통한 POS용 프린터 공유 방법 및 이를 수행하는 장치를 이용하면, POS 단말 내의 복수 개의 POS API가 1대의 POS 프린터를 공유할 수 있다는 이점이 있고, 상술한 이점을 통해 POS API 마다 설치했던 POS 프린터의 설치비용을 해결할 수 있다는 이점이 있다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 장치에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포 함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 장치에 분산되어 분산방식으로 컴퓨 터가 읽을 수 있는 코드가 저장되고 실행될 수 있다
특정 실시예에 대한 상술한 설명이 본 명세서의 실시예의 일반적인 특성을 충분히 밝힘으로써, 다른 실시예가 현재의 지식을 적용함으로써 일반적인 개념으로부터 벗어나지 않고 이러한 특정 실시예를 용이하게 수정하고/하 거나 적응할 수 있으며, 따라서, 이러한 적응 및 수정은 개시된 실시예의 등가물의 의미 및 범위 내에서 이해되 어야 하고 의도된다. 본 명세서에 사용된 문구 또는 용어는 설명을 위한 것이며 제한하려는 것이 아님을 이해해 야 한다. 따라서, 본 명세서의 실시예는 실시예와 관련하여 설명되었지만, 통상의 기술자는 본 명세서의 실시예 가 본 명세서에 설명된 바와 같은 실시예의 사상 및 범위 내에서 수정하여 실시될 수 있음을 인식할 것이다.
100: PC COM Port 모니터링을 통한 POS 프린터 공유 장치
10: POS용 단말
20: POS용 프린터
200: POS용 API
300: 매니저 API
310: 가상포트 할당부
320: 확장자 인식부
330: 모니터링부
340: 컴포트 넘버링 가변부

Claims (5)

  1. 가상 컴포트를 할당하는 매니저 API;
    각각이 상기 매니저 API로부터 프린트 데이터를 출력하기 위한 가상 컴포트를 제공받는 복수 개의 POS API; 및
    상기 복수 개의 POS API 중 어느 하나와 물리적 컴포트로 접속되는 POS 프린터를 포함하고,
    상기 매니저 API는 가상 컴포트가 할당된 POS API로부터 프린트 데이터 출력신호를 수신하면, 상기 POS 프린터 및 해당 POS API에서 가상 컴포트가 물리적 컴포트로 인식되도록 상기 POS API 및 상기 POS 프린터의 POS 프린트 프로그램의 명령어를 제어하고,
    상기 매니저 API는
    사용자로부터 상기 가상 컴포트를 할당받을 적어도 하나 이상의 POS API의 확장자를 수신한 후, 수신한 확장자의 개수에 따른 가상 컴포트를 할당하는 가상포트 할당부;
    상기 물리적 컴포트의 포트넘버 및 상기 물리적 컴포트와 접속된 POS API의 확장자를 인식하는 확장자 인식부;
    상기 POS 프린트 프로그램의 실행상태 및 출력대기 상태를 모니터링하는 모니터링부;
    상기 가상 컴포트를 할당받은 복수 개의 POS API 중 어느 하나로부터 프린트 출력신호를 수신할 경우, 상기 어느 하나의 POS API의 가상 컴포트의 넘버를 상기 물리적 컴포트의 넘버로 가변시켜 상기 POS API 및 상기 POS 프린터의 POS 프린트 프로그램으로 제공하는 컴포트 넘버링 가변부를 포함하고,
    상기 컴포트 넘버링 가변부는
    상기 모니터링부로부터 상기 POS 프린트 프로그램의 출력대기상태가 "0"일 경우 실행되는 것을 특징으로 하는 PC 컴포트 모니터링을 통한 POS용 프린터 공유장치.
  2. 삭제
  3. 제1항에 있어서,
    상기 매니저 API는
    가상 컴포트가 할당된 적어도 하나 이상의 POS API의 개수, 확장자명, 물리적 컴포트와 연결된 POS API의 확장자명을 사용자에게 표시하는 것을 특징으로 하는 PC 컴포트 모니터링을 통한 POS용 프린터 공유장치.
  4. 제1항에 있어서,
    상기 컴포트 넘버링 가변부는
    API hooking 알고리즘을 기반으로 실행되는 것을 특징으로 하는 PC 컴포트 모니터링을 통한 POS용 프린터 공유장치.
  5. 청구항 제1항, 제3항 내지 청구항 제4항 중 어느 하나의 항에 기재된 PC 컴포트 모니터링을 통한 POS용 프린터 공유장치를 이용한 POS용 프린터 공유방법에 있어서,
    가상포트 할당부에서 사용자로부터 가상 컴포트를 할당받을 적어도 하나 이상의 POS API의 확장자를 수신하는 단계;
    상기 가상포트 할당부에서 수신한 확장자의 개수에 따른 가상포트를 할당하는 단계;
    확장자 인식부에서 POS 프린트의 물리적 컴포트의 포트넘버 및 상기 물리적 컴포트와 접속된 POS API의 확장자를 인식하는 단계;
    모니터링부에서 POS 프린트 프로그램의 실행상태 및 출력대기 상태를 모니터링하는 단계;
    컴포트 넘버링 가변부에서 상기 가상 컴포트를 할당받은 적어도 하나 이상의 POS API 중 어느 하나로부터 프린트 출력신호를 수신할 경우, 상기 어느 하나의 POS API의 가상 컴포트의 넘버를 상기 물리적 컴포트의 넘버로 가변시켜 상기 POS API 및 상기 POS 프린터의 POS 프린트 프로그램으로 제공하는 단계;
    상기 POS 프린터의 POS 프린트 프로그램에서 상기 가상 컴포트에서 전송된 프린트 데이터를 출력하는 단계를 포함하는 PC 컴포트 모니터링을 통한 POS용 프린터 공유장치를 이용한 POS용 프린터 공유방법.
KR1020200114110A 2020-09-07 2020-09-07 Pos용 프린터 공유 방법 및 이를 수행하는 장치 KR102226608B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200114110A KR102226608B1 (ko) 2020-09-07 2020-09-07 Pos용 프린터 공유 방법 및 이를 수행하는 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200114110A KR102226608B1 (ko) 2020-09-07 2020-09-07 Pos용 프린터 공유 방법 및 이를 수행하는 장치

Publications (1)

Publication Number Publication Date
KR102226608B1 true KR102226608B1 (ko) 2021-03-11

Family

ID=75142980

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200114110A KR102226608B1 (ko) 2020-09-07 2020-09-07 Pos용 프린터 공유 방법 및 이를 수행하는 장치

Country Status (1)

Country Link
KR (1) KR102226608B1 (ko)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002307783A (ja) * 2001-04-10 2002-10-23 Seiko Epson Corp プリンタ、posシステム、無線通信制御方法および情報記録媒体
KR20120024506A (ko) * 2010-09-06 2012-03-14 세이코 엡슨 가부시키가이샤 인쇄 데이터를 이용한 기능 확장 방법, 기능 확장 장치, 및 기록 매체
JP2012181711A (ja) * 2011-03-02 2012-09-20 Seiko Epson Corp デバイス統合用プログラム、デバイス統合方法、及び、ホスト装置
JP2013041440A (ja) * 2011-08-17 2013-02-28 Seiko Epson Corp 出力制御装置、出力装置の制御方法、及び、プログラム
KR20130143107A (ko) * 2011-01-18 2013-12-30 프록시미언트, 인크 전자 거래 기록 분배 시스템
JP5397162B2 (ja) 2009-10-29 2014-01-22 セイコーエプソン株式会社 プリンタードライバー、及び、posプリンターの制御方法
KR101488664B1 (ko) * 2014-03-26 2015-02-02 에스케이텔레콤 주식회사 가상 머신별 데이터 경로 가상화 처리를 위한 네트워크 인터페이스 카드 및 상기 네트워크 인터페이스 카드에서의 가상 머신별 데이터 경로 가상화 처리 방법
JP2016099753A (ja) * 2014-11-20 2016-05-30 コニカミノルタ株式会社 端末装置、プリンタ制御方法、およびコンピュータプログラム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002307783A (ja) * 2001-04-10 2002-10-23 Seiko Epson Corp プリンタ、posシステム、無線通信制御方法および情報記録媒体
JP5397162B2 (ja) 2009-10-29 2014-01-22 セイコーエプソン株式会社 プリンタードライバー、及び、posプリンターの制御方法
KR20120024506A (ko) * 2010-09-06 2012-03-14 세이코 엡슨 가부시키가이샤 인쇄 데이터를 이용한 기능 확장 방법, 기능 확장 장치, 및 기록 매체
KR20130143107A (ko) * 2011-01-18 2013-12-30 프록시미언트, 인크 전자 거래 기록 분배 시스템
JP2012181711A (ja) * 2011-03-02 2012-09-20 Seiko Epson Corp デバイス統合用プログラム、デバイス統合方法、及び、ホスト装置
JP2013041440A (ja) * 2011-08-17 2013-02-28 Seiko Epson Corp 出力制御装置、出力装置の制御方法、及び、プログラム
KR101488664B1 (ko) * 2014-03-26 2015-02-02 에스케이텔레콤 주식회사 가상 머신별 데이터 경로 가상화 처리를 위한 네트워크 인터페이스 카드 및 상기 네트워크 인터페이스 카드에서의 가상 머신별 데이터 경로 가상화 처리 방법
JP2016099753A (ja) * 2014-11-20 2016-05-30 コニカミノルタ株式会社 端末装置、プリンタ制御方法、およびコンピュータプログラム

Similar Documents

Publication Publication Date Title
US20030043396A1 (en) Printer driver access interface
US6282646B1 (en) System for real-time adaptation to changes in display configuration
US6965953B2 (en) Information processing apparatus, method for controlling information processing apparatus, and storage medium storing program for realizing the method
US7256901B2 (en) Printer driver customization using incremental custom print processor
US7106472B2 (en) Print driver for an extended printing device
US20130314735A1 (en) System, image forming apparatus, server, and control method thereof
US11481161B2 (en) Control method and storage medium
JP4438064B2 (ja) データ処理装置および印刷設定処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム
US9965291B2 (en) Information processing apparatus enabling high-speed start-up, control method therefor, and storage medium storing control program therefor
KR102226608B1 (ko) Pos용 프린터 공유 방법 및 이를 수행하는 장치
US20100214599A1 (en) Method for printing with XPSDrv printer driver
US7212306B2 (en) System and method for allocating random access memory in a multifunction peripheral device
US7202967B2 (en) Printer, control program loading method, and medium and page printer recording load control programs
EP3296856B1 (en) Information processing apparatus, method, and program
US20090279122A1 (en) Dual-head or hybrid print driver supporting xps and gdi print paths without performing data conversion between xps to emf or vice versa
US5761397A (en) Controlling logical channel use based upon printing system environment
US20200244828A1 (en) Information processing apparatus, and method of controlling information processing apparatus
US20200301628A1 (en) Image forming apparatus and power supply control method
JP2000071570A (ja) 印刷制御方法及び装置、記録媒体
US8958099B2 (en) Information processing system that sets information in a registry of a client terminal in accordance with setting information sent by a management terminal
KR20230100136A (ko) 멀티코어 프로세서를 이용한 주변 장치 공유 방법 및 이를 이용하는 전자 장치
US20200285717A1 (en) Electronic apparatus, and method of controlling electronic apparatus
US20230305774A1 (en) Print control apparatus, printing system, and non-transitory computer-readable medium storing program
US20210216255A1 (en) Recommending proposed print saving attributes based on paper available in printer
JP2010067063A (ja) 情報処理装置及び情報処理方法とそのプログラム及びそのプログラムを記録した記録媒体

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant