KR100838871B1 - 정보 처리 장치, 정보 처리 방법, 및 기억 매체 - Google Patents

정보 처리 장치, 정보 처리 방법, 및 기억 매체 Download PDF

Info

Publication number
KR100838871B1
KR100838871B1 KR1020060028060A KR20060028060A KR100838871B1 KR 100838871 B1 KR100838871 B1 KR 100838871B1 KR 1020060028060 A KR1020060028060 A KR 1020060028060A KR 20060028060 A KR20060028060 A KR 20060028060A KR 100838871 B1 KR100838871 B1 KR 100838871B1
Authority
KR
South Korea
Prior art keywords
setting
driver
customization
information
attribute information
Prior art date
Application number
KR1020060028060A
Other languages
English (en)
Other versions
KR20060105501A (ko
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 캐논 가부시끼가이샤
Publication of KR20060105501A publication Critical patent/KR20060105501A/ko
Application granted granted Critical
Publication of KR100838871B1 publication Critical patent/KR100838871B1/ko

Links

Images

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24BDOMESTIC STOVES OR RANGES FOR SOLID FUELS; IMPLEMENTS FOR USE IN CONNECTION WITH STOVES OR RANGES
    • F24B1/00Stoves or ranges
    • F24B1/20Ranges
    • F24B1/202Ranges specially adapted for travelling
    • F24B1/207Ranges specially adapted for travelling movable
    • 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/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1205Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47JKITCHEN EQUIPMENT; COFFEE MILLS; SPICE MILLS; APPARATUS FOR MAKING BEVERAGES
    • A47J37/00Baking; Roasting; Grilling; Frying
    • A47J37/06Roasters; Grills; Sandwich grills
    • A47J37/08Bread-toasters
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24BDOMESTIC STOVES OR RANGES FOR SOLID FUELS; IMPLEMENTS FOR USE IN CONNECTION WITH STOVES OR RANGES
    • F24B13/00Details solely applicable to stoves or ranges burning solid fuels 
    • F24B13/02Arrangement or mountings of fire-grate assemblies; Arrangement or mountings of linings for fire-boxes, e.g. fire-backs 
    • 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/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • 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/1224Client or server resources management
    • G06F3/1225Software update, e.g. print driver, modules, plug-ins, fonts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24BDOMESTIC STOVES OR RANGES FOR SOLID FUELS; IMPLEMENTS FOR USE IN CONNECTION WITH STOVES OR RANGES
    • F24B3/00Heaters not covered by group F24B1/00, e.g. charcoal braziers 
    • 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/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/1219Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to consumables, e.g. ink, toner, paper
    • 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/1239Restricting the usage of resources, e.g. usage or user levels, credit limit, consumables, special fonts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • Food Science & Technology (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

본 발명은, 인쇄 장치를 제어하는 디바이스 드라이버를 속성의 설정에 의해 커스터마이즈하는 정보 처리 장치를 제공한다. 정보 처리 장치는, 복수의 디바이스 드라이버를 특정하는 특정부; 및 상기 특정부에 의해 특정된 복수의 디바이스 드라이버 각각에서 커스터마이즈 동작이 수행된 후에 입력되는 일회의 디바이스 드라이버 커스터마이즈 완료 지시에 응답하여, 디바이스 드라이버에 대응하는 속성 정보를 상기 특정부에 의해 특정되는 상기 복수의 디바이스 드라이버에 설정하는 설정부를 포함한다.
디바이스 드라이버, API, Customization, UI, UPD 파일

Description

정보 처리 장치, 정보 처리 방법, 및 기억 매체{INFORMATION PROCESSING APPARATUS AND METHOD, AND STORAGE MEDIUM}
도 1은 본 발명의 실시예에 따른 인쇄 시스템의 구성을 나타낸 블록도.
도 2는 소정의 어플리케이션 및 인쇄 처리 관련 프로그램이 기동된 후, 호스트 컴퓨터(3000)의 RAM에 프로그램 및 데이터가 로드된 상태에서의 RAM(2)의 메모리 맵을 나타낸 도면.
도 3은 커스터마이즈 툴의 UI를 나타낸 도면.
도 4는초기 설정 값을 커스터마이즈하기 위해 채용되는 프린터 드라이버 UI를 나타낸 도면.
도 5는 문서 속성 표시 컨트롤 설정 UI를 나타낸 도면.
도 6은 커스터마이즈 툴에 있어서의 기본 동작의 처리의 흐름을 설명하는 플로우차트.
도 7은 프린터 드라이버의 인스톨 정보를 기술하는 3개의 INF 파일을 나타낸 도면.
도 8은 프린터 드라이버 커스터마이즈 UI를 표시하는 동작의 처리 흐름을 나타낸 플로우차트.
도 9는 프린터 드라이버의 UPD(universal printer driver) 파일의 데이터 포 맷을 나타낸 도면.
도 10a는 프린터 드라이버에 제공되어야 할 어플리케이션 프로그램 인터페이스(API)을 호출하는 방법을 나타낸 도면.
도 10b는 API 함수와 대응하는 의사 API 함수와의 관계를 나타낸 테이블.
도 11은 의사 Windows® API를 호출하는 동작의 처리 흐름을 나타낸 플로우차트.
도 12는 의사 Windows® API 함수의 일례로서의 CSPL-GetVersionEx 함수를 호출하는 동작의 처리 흐름을 나타낸 플로우차트.
도 13은 커스터마이즈에 대응한 프린터 드라이버의 속성을 설정하는데 사용되는 UI 제어를 제어하는 동작의 처리 흐름을 나타낸 플로우차트.
도 14는 커스터마이즈 정보를 유지하는 형식을 나타낸 도면.
도 15는 커스터마이즈 정보를 유지하는 또 다른 형식을 나타낸 도면.
도 16은 커스터마이즈 정보를 유지하는 또 다른 형식을 나타낸 도면.
도 17은 하나의 드라이버 세트 내에 포함된 복수의 프린터 드라이버를 일괄하여 커스터마이즈하는 동작의 처리 흐름을 나타낸 플로우차트.
도 18은 디바이스 드라이버를 커스터마이즈하는데 사용되는 커스터마이즈 데이터의 일례를 나타낸 도면.
도 19는 복수의 드라이버를 커스터마이즈하는데 사용되는 툴의 UI를 나타낸 도면.
<도면의 주요 부분에 대한 부호의 설명>
11: 외부 메모리 (HD, FD)
201: 어플리케이션
204: 인쇄처리 관련 처리 프로그램
2041: 프린터 드라이버
2042: 프린터 드라이버 UI 제어 모듈
1500: 프린터
13a: 폰트 ROM
13b: 프로그램 ROM
13c: 데이터 ROM
18: 입력부
16: 인쇄부 IF
17: 인쇄부
1501: 조작부
14: 외부 메모리(HD, FD)
201: 어플리케이션
202: 빈 메모리
203: 관련 데이터
204: 인쇄처리 관련 프로그램
[특허 문헌 1] 일본 특허공개공보 평8-278871호
[특허 문헌 2] 일본 특허공개공보 제2003-208276호
본 발명은, 디바이스 드라이버를 커스터마이즈(customize)하는 정보 처리 기술에 관한 것이다.
종래부터, 인쇄 시스템의 도입 환경에 따라서 사용하는 인쇄 처리 장치를 제어하는 인쇄 제어 프로그램(프린터 드라이버)를 커스터마이즈하고자 하는 요구가 있어 왔다. 이러한 요구는 인쇄 시스템의 장착 장소와 고객 환경의 다양화로 인하여, 최근 더욱 첨예화 되어왔다.
이러한 요망에 부합하기 위하여, 종래에서의 인쇄 처리 장치의 프린터 드라이버에 있어서도, 프린터의 프린터 드라이버에 대하여 설정된 디폴트 값을 변경하도록 하거나, 디폴트 설정값의 변경이나, 프린터 드라이버의 유저 인터페이스(이하, "UI"라고 함)에서, 고객의 사용 조건에 따라서 설정이 변경될 수 없는 항목을 지정하여 입력 제어(이하, "디스에이블 처리"라 함)를 달성하도록 하는 커스터마이즈 기술(커스터마이즈 시스템)이 제공되었다. 이러한 제어 기술에서는, 지정된 항목에 해당하는 입력 데이터가 거부된다.
전술한 선행 기술로서는, 예컨대, 일본 특허공개공보 평8-278871호 및 제2003-208276호가 있다.
그러나, 이러한 커스터마이즈 시스템에서는, 프린터 드라이버를 지원하는 운 영 체제(OS)에 프린터 드라이버의 인스톨을 위한 인스톨 세트를 작성할 것이 먼저 요구된다. 그 환경에서, 커스터마이즈된 프린터 드라이버의 인스톨 세트를 작성하는데 사용되는 툴이 기동되었다.
또한, 1 개의 드라이버 세트에 들어가 있는 복수의 프린터 드라이버를 커스터마이즈 하는 경우에도, 커스터마이즈 프로그램은 한 번에 1 개(프린터의 한 기종에 해당)의 프린터 드라이버만을 커스터마이즈 할 수 있다. 따라서, 복수의 프린터 드라이버를 커스터마이즈하는 경우, 우선, 프로그램은 복수의 프린터 드라이버 중 한 기종의 프린터에 해당하는 하나를 커스터마이즈한 후, 이어서 다음 프린터 드라이버 드라이버에 대하여 마찬가지로 커스터마이즈할 필요가 있다.
그 이유는, 종래의 커스터마이즈 툴은, 정보 처리 장치에 인스톨되어 있던 드라이버를 커스터마이즈할 수만 있기 때문이다. 또 다른 드라이버를 커스터마이즈하기 위해서는, 장치에 제일 먼저의 드라이버가 인스톨 된 후에 툴이 기동되어야 한다.
서로 다른 종류의 프린터가 제공되는 네트워크 환경에서, 관리자가 각각의 인쇄 장치에 대응하는 커스터마이즈된 드라이버들을 작성하는 경우, 관리자는 각각의 프린터 종류에 해당하는 마찬가지의 커스터마이즈 수순을 반복하여 수행해야 한다. 이는 관리자에게 큰 부담을 지우는 것이다. 또한, 커스터마이즈 드라이버의 작성 효율도 낮다.
본 발명의 일 목적은 디바이스 드라이버를 커스터마이즈함에 있어 조작성을 향상시키는 것이다.
본 발명의 또 다른 목적은, 하나의 커스터마이즈 처리에 있어서 복수의 프린터 드라이버들을 커스터마이즈 할 수 있도록 하는 것이다.
본 발명의 일 양태에 따르면, 인쇄 장치를 제어하는 디바이스 드라이버를 그 속성을 설정함으로써 커스터마이즈(customize)하는 정보 처리 장치는, 복수의 디바이스 드라이버를 특정하는 특정부, 및 상기 특정부에 의해 특정된 복수의 디바이스 드라이버 각각에서 커스터마이즈 동작이 수행된 후에 입력되는 일회의 디바이스 드라이버 커스터마이즈 완료 지시에 응답하여, 디바이스 드라이버에 대응하는 속성 정보를 상기 특정부에 의해 특정되는 상기 복수의 디바이스 드라이버에 설정하는 설정부를 포함한다.
본 발명의 또 다른 특징들은 첨부 도면들을 참조하여 이하의 실시예들의 상세한 설명으로부터 명확해질 것이다.
이하, 첨부 도면을 참조하여 본 발명의 실시예를 설명한다. 이하의 실시예들의 설명에 있어서, Microsoft®사의 PC용 OS인 Windows®의 프린터 드라이버를 커스터마이즈하는 방법을 일례로서 설명한다. 본 발명은 예를 들어, 리눅스 또는 Mac OS X 등의 기타의 운영체제에도 동일하게 잘 적용될 수 있다.
도 1은 본 발명의 일 실시예에 따른 인쇄 시스템의 구성을 나타낸 블록도이다. 본 인쇄 시스템은 정보 처리 장치(이하, "호스트 컴퓨터" 라고 함)(3000)와 이 호스트 컴퓨터(3000)로부터 인쇄 데이터를 수신하여 인쇄를 수행하는 프린터 (1500)를 포함한다.
호스트 컴퓨터(3000)에서, CPU(1)는 RAM(2)에 기억되어 있는 프로그램에 따라서 시스템 버스(4)에 접속된 디바이스들을 총괄적으로 제어한다. RAM(2)은 CPU(1)의 주 메모리 및 작업 영역으로서도 기능한다. ROM(3)은 각종 프로그램 및 데이터를 저장하며, 각종 폰트를 기억하는 폰트 ROM(3a)과 부트 프로그램이 및 BIOS를 기억하는 프로그램 ROM(3b), 및 각종 데이터를 기억하는 데이터를 저장하는 ROM(3c)으로 구분된다.
키보드 컨트롤러(KBC)(5)는, 키보드(KB)(9) 및 포인팅 디바이스(마우스)(도시 생략)로부터의 키 입력 데이터를 제어한다. CRT 컨트롤러(CRTC)(6)는 CRT 디스플레이(CRT)(10)에의 데이터 표시를 제어한다. 디스크 컨트롤러(DKC)(7)는 하드디스크 등의 외부 메모리(11)에의 액세스를 제어한다. 프린터 컨트롤러(PRTC)(8)는 쌍방향성 인터페이스(21)를 통하여 프린터(1500)에 접속되며, 프린터(1500)와의 통신 제어를 수행한다.
외부 메모리(11)는, 예컨대, 하드디스크(HD), 자기 디스크(MO), 및 플로피® 디스크(FD) 이다. 도시된 바와 같이, 운영 체제(OS)(205)를 비롯하여 각종 어플리케이션 프로그램들(201)(예를 들면, 도형, 이미지, 문자, 표 등이 혼재한 문서를 처리하는 문서 처리 프로그램), 및 인쇄 처리 관련 프로그램(204)을 기억하고 있는 것 외에, 유저 파일 및 편집 파일을 기억하고 있다. 인쇄 처리 관련 프로그램(204)은, 페이지 기술 언어에 의해 기술되는 인쇄 데이터를 생성하며, 동일한 시스템의 복수 프린터에 의해 공통으로 사용될 수 있다. 인쇄 처리 관련 프로그램 (204)은, 또한 프린터 제어 커맨드 생성 모듈(이하, 프린터 드라이버)(2041), 및 프린터 드라이버 UI 제어 모듈(2042)을 또한 포함한다.
외부 메모리(11)에 기억된, 본 실시예에 따른 커스터마이즈 프로그램(이하, "커스터마이즈 툴"이라 함)을 포함하는 어플리케이션 프로그램(201)은 RAM(2)에 로드되어 CPU(1)에 의해 실행된다. 또한, CPU(1)는 아웃라인 폰트 전개(또는, 래스터라이즈)를 수행하여, CRT 디스플레이(l0)의 화면상에서의 WYSIWYG(What You See Is What You Get)를 가능하게 한다. 또한, CPU(1)는, CRT 디스플레이(10)의 화면 상의 마우스 커서(도시 생략)로 지정되는, 커맨드에 따라 등록된 각종 창들을 개방하고 각종 데이터 처리를 수행한다. 인쇄 수행시, 유저는 인쇄 설정창(프린터 드라이버 UI 제어 모듈(2042)에 의해 제어됨)을 개방하여, 프린터의 설정 및 인쇄 모드의 선택을 포함하는 프린터 드라이버(2041)에 대한 인쇄 처리 설정을 수행할 수 있다.
다음, 프린터(1500)의 구성에 대하여 설명한다. CPU(12)는 전체 프린터(1500)의 동작을 제어한다. RAM(19)은 CPU(12)의 주 메모리 및 작업 영역으로서 기능하며, 또한 출력 정보 래스터라이즈 영역 및 환경 데이터 저장 영역으로서도 이용된다. 또한, RAM(19)은 NVRAM(불휘발성 RAM) 영역을 가지며, 확장 포트에 접속되는 옵션 RAM에 의해 그 용량이 증가될 수 있도록 구성된다. ROM(13)은 각종 폰트를 기억하는 폰트 ROM(13a), CPU(12)에 의해 실행되는 제어 프로그램을 기억하는 프로그램 ROM(13b), 및 각종 데이터를 기억하는 데이터 ROM(13c)을 포함한다. 입력부(18)는 호스트 컴퓨터(3000)에 대하여 및 호스트 컴퓨터로부터 데이터를 송 수신한다. 인쇄부 인터페이스(I/F)(16)는 프린터 엔진으로서 역할하는 인쇄부(17)로의 인터페이스를 제어한다.
메모리 컨트롤러(MC)(20)는 외부 메모리(14)로의 액세스를 제어하며, 외부 메모리로는, 예컨대, 하드디스크(HD), 자기 디스크(MO), 플로피® 디스크(FD), 및/또는 IC 카드를 포함한다. 외부 메모리(14)는 폰트 데이터 및 에뮬레이션 프로그램, 및 폼(form) 데이터를 기억한다. 또한, 하드디스크 등의 외부 메모리(14)가 접속되어 있지 않은 경우, ROM(13)의 데이터 ROM(13c)에, 호스트 컴퓨터(3000)에서 이용되는 정보가 기억된다. 외부 메모리(14)의 수는 하나에 한하지 않으며, 복수 일 수도 있다. 예컨대, 프린터(1500)는 내장 폰트에 옵션 폰트 카드가 추가되도록 구성될 수 있으며, 상이한 언어 체계의 프린터 제어 언어들을 해석하는 프로그램을 저장하는 복수의 외부 메모리가 이에 접속될 수 있도록 구성될 수도 있다.
조작부(1501)에는 유저의 조작을 접수하는 조작 패널이 제공된다. 조작 패널에는 조작을 위한 스위치 및 LED 표시기(도시 생략)가 배치된다. 조작부(1501)는 조작 패널로부터 보내져 온 프린터 설정 정보를 기억하는 NVRAM(불휘발성 RAM)(도시 생략)을 포함할 수 있다.
CPU(12)는 ROM(13)의 프로그램 ROM(13b)에 기억된 제어 프로그램에 따라 인쇄부 인터페이스(16)를 통하여 인쇄부(프린터 엔진)(17)에 출력 정보로서의 화상 신호를 출력한다. 또한, CPU(12)는 입력부(18)를 통하여 호스트 컴퓨터(3000)와의 통신 처리를 수행할 수 있으며, 호스트 컴퓨터(3000)로부터 송신되는 인쇄 데이터를 수신하고, 프린터(1500)로부터 출력되는 정보를 호스트 컴퓨터(3000)에 통지한 다.
도 2는 소정의 어플리케이션 프로그램 및 인쇄 처리 관련 프로그램이 기동된 후, 호스트 컴퓨터(3000)의 RAM(2)에 프로그램 및 데이터가 로드된 상태에서의 RAM(2)의 메모리 맵을 나타낸 도면이다.
도시된 바와 같이, RAM(2)에는 BIOS(206), OS(205), 어플리케이션 프로그램(201), 인쇄 처리 관련 프로그램(204), 및 관련 데이터(203)가 로드된다. 또한, 빈 메모리 영역(202)도 확보된다. 이에 따라, 어플리케이션 프로그램(201) 및 인쇄 처리 관련 프로그램(204)이 실행될 수 있다. 또한, 인쇄 처리 관련 프로그램(204)에 포함된 프린터 드라이버 UI 제어 모듈(2042)(도 1 참조)은, 유저로부터의 인쇄 설정 명령에 응답하여 CRT 디스플레이(l0)의 화면상에 인쇄 설정 화면을 표시하여, 사용자로 하여금 키보드(9)에 의한 설정을 수행할 수 있도록 한다.
도 3은 커스터마이즈 툴의 UI의 일례를 나타낸 도면이다. 커스터마이즈 툴은 Windows® 2000/XP/Server2003 상에서 동작하며, 예컨대, Wiindows®98/ME, Windows® NT 4.0, Windows® 2000/XP/Server2003 용의 프린터 드라이버들을 커스터마이즈 한다. 그러나, 본 발명에 따른 지원 OS는 이에 한하지는 않는다. 프린터 드라이버를 실제로 인스톨하지 않고, 의사 API(후술함)를 이용하여 OS에 대응하는 API의 동작의 에뮬레이션이 가능하다. 개별 함수의 인수의 설정을 변경 또는 추가함으로써, API의 에뮬레이션이 지원될 수 있다.
도 3에 도시된 메뉴(301)의 "열기(Open)"를 사용자가 지정하는 경우, 커스터마이즈되도록 설정되는 드라이버의 폴더를 지정하는데 사용되는 다이얼로그 박스( 도시 생략)가 표시된다. 따라서, 커스터마이즈되어야 하는 드라이버의 저장 위치가 지정될 수 있다. 지정된 폴더는 표시란(302)에 표시된다. 지시된 드라이버 세트에 대응하는 OS가 표시란(303)에 표시된다.
하나의 드라이버 세트의 폴더에, 프린터의 기종에 대응한 프린터 드라이버(도 14 내지 도 16에서 "프린터 모델(printer model)"이라 함)가 복수개 저장되는 경우, 커스터마이즈 드라이버 작성 시에 복수의 프린터 드라이버가 리스트화된다(도 19 참조). 커스터마이즈 툴은, 리스트화된 각 프린터 드라이버에 따라 커스터마이즈 정보(또는, 커스터마이즈 데이터)가 설정될지 여부를 판정한다. 그 후, 커스터마이즈 툴은 커스터마이즈 데이터가 설정되어 있는 프린터 드라이버에 관련된 커스터마이즈 드라이버를 작성한다. 이러한 처리는, 도 6의 단계 S608 및 도 17의 플로우차트의 설명에서 상세히 설명한다. 이러한 처리는 의사 API를 사용하여 성취될 수 있다. 이러한 경우, 커스터마이즈되어야 하는 드라이버는 OS에 의해 인식되도록 OS 상에 인스톨함으로써 동작 가능한 상태로 되지는 않는다. 따라서, 드라이버들은 서로 이어서 커스터마이즈될 수 있다. 도 19에 도시된 표시란(1910)에는, 프린터 드라이버의 리스트가 표시되어 있다. 커스터마이즈되어야 할 각각의 드라이버가 선택되고 반전 화면으로 표시된다. 그 후, 버튼(1901 내지 1903)이 눌려져, 드라이버를 커스터마이즈한다. 따라서, 커스터마이즈 버튼(1904)을 누름으로써 커스터마이즈된 복수의 드라이버가 생성될 수 있다. 결국, 커스터마이즈 버튼(1904)을 한번만 누름으로써 커스터마이즈 툴이 제공되어, 커스터마이즈된 복수의 드라이버를 포함하는 인스톨 세트로서 역할한다.
커스터마이즈 데이터는, 디바이스 드라이버의 UI의 컨트롤 항목의 표시/비표시를 수행하는데 사용되는 제어데이터, 및 도 18에 도시한 바와 같은 디바이스 드라이버의 설정값, 등의 각종 데이터를 포함한다.
도 18은 디바이스 모드(DEVMODE)의 데이터 구조의 일례를 나타낸다.
본 도면은, 용지 방향을 나타내는 데이터(dmOrientation), 용지 사이즈를 나타내는 데이터(dmPaperSize), 용지 폭을 나타내는 데이터(dmPaperWidth), 및 부수를 나타내는 데이터(dmCopies)를 기억하는 방식을 나타낸다. 또한, 이 DEVMODE 데이터 구조는 레지스트리에 저장된다. 디폴트 인쇄 설정 환경을 나타내는 데이터 또는 "프로파일"(후술함)이 판독되어, 레지스트리에 저장된 DEWODE 데이터 구조로부터 데이터를 판독하거나 이에 기입함으로써 프린터 드라이버(2041)의 UI에 반영될 수 있다.
"프로파일"은, 프린터 드라이버(2041)에 해당하는 복수의 인쇄 설정 데이터의 세트이다. 유저는 한 세트의 설정 데이터를 포함하는 "프로파일"을 프린터 드라이버(2041)의 유저 인터페이스에 지정함으로써 원하는 운영 환경을 얻을 수 있다. 예컨대, 유저가 워터마크와 스테이플을 자주 이용하는 경우, 워터마크 설정 데이터 및 스테이플 설정 데이터를 포함하는 한 세트의 설정 데이터가 프로파일로서 예비로 등록된다. 따라서, "프로파일"을 선택하는 것만으로 유저는 원하는 값으로 복수의 설정 항목들을 설정하여 인쇄를 성취할 수 있다. 커스터마이즈 툴은 이러한 데이터를 속성 정보의 일례인 커스터마이즈 데이터로서 유지하며, 이러한 데이터를 후술하는, UPD 파일, 또는 GPD(Generic Printer Driver) 파일에 기입한 다. GPD 파일은 UPD 파일과 실질적으로 동일한 구조이다. 본 실시예에서는 GPD 파일 뿐만 아니라 UPD 파일을 정정하는 것에 의해 프린터 드라이버가 커스터마이즈 될 수 있다.
리스트 뷰(305)에는 커스터마이즈되어야 하는 프린터 드라이버에 해당하는 프린터의 각각의 기종(model), 및 커스터마이즈된 정보에 상응하여, 식별 표시 "On"이 표시된다. 체크 박스(310)가 체크되는 경우, 버튼(311)은 유효하게 된다. 버튼(311)이 눌려지는 경우, 커스터마이즈되어야 하는 프린터 드라이버의 UI(도 4)가 표시된다. 인쇄 설정 데이터(문서 속성 데이터)의 초기값 및 디바이스 설정 데이터(프린터 속성 데이터)가 설정될 수 있다.
체크 박스(320)가 체크되는 경우, 버튼(321)이 유효하게 된다. 버튼(321)이 눌려지는 경우, 프린터 드라이버 UI 상의 컨트롤 항목을 표시하는 방법을 커스터마이즈하기 위한 UI(도 5)가 표시된다. 따라서, 프린터 드라이버 UI 상에 제어 항목을 표시하는 방법이 설정될 수 있다.
도 3에 도시된 UI 창에서 설정 버튼(350)이 눌려지는 경우, 도 4 또는 도 5에 도시된 UI 창으로부터 설정된 커스터마이즈에 관한 데이터가 어플리케이션 프로그램(커스터마이즈 툴)내에, 커스터마이즈 정보(또는 커스터마이즈 데이터)로서 유지된다. 커스터마이즈 툴은, 예컨대, 프린터 드라이버 인스톨 정보를 기술하는데 사용되는 파일("INF 파일"이라 하며, 도 7을 참조하여 후술함)에 커스터마이즈 정보를 유지할 수 있다. 커스터마이즈 툴은 프린터 드라이버가 이미 커스터마이즈되어 있는지 여부를 식별 정보에 따라 판정할 수 있다. 도 14 내지 16은 한 개의 드 라이버 세트에 저장된 복수의 프린터 드라이버들을 나타낸다. 커스터마이즈 툴은 각각의 프린터 드라이버에 해당하는 커스터마이즈 정보의 유무를 판정하여, 커스터마이즈 정보가 이미 준비된 프린터 드라이버들을 커스터마이즈 한다(도 6의 단계 S608, 및 도 17 참조).
커스터마이즈 정보는, 프린터 모델명(또는, 프린터의 기종에 대응하는 프린터 드라이버)과 커스터마이즈 정보의 형태로 유지된다. 커스터마이즈 정보는, 도 15 또는 도 16에 도시된 형태로 유지될 수도 있다. 도 15에 도시된 형태를 채용하는 경우에는, "커스터마이즈 되었는지(CUSTOMIZED)" 또는 "커스터마이즈되지 않았는지(UNCUSTOMIZED)"를 나타내는 식별 정보가 프린터 모델명(또는, 프린터 기종에 해당하는 프린터 드라이버) 및 커스터마이즈 정보와 조합되어 유지된다.
도 16에 도시된 데이터 유지 형식을 채용하는 경우, 커스터마이즈되지 않은 프린터의 모델명을 나타내는 데이터에 의해 "UNCUSTOMIZED"를 나타내는 식별 정보(예컨대, "0 클리어런스(Clearance)")가 유지된다. 커스터마이즈 툴이 커스터마이즈 정보 유지 영역을 INF 파일 내에 확보하는 경우, 프린터 모델에 대하여, 설정 버튼(350)이 눌려질 때, 식별 정보에 대신하여 커스터마이즈 되지 않은 드라이버 각각에 상응하여 커스터마이즈 정보가 유지된다 커스터마이즈 툴은, 커스터마이즈 정보 유지 영역에 유지된 식별 정보 및 커스터마이즈 정보에 따라서, 관련 프린터 모델이 커스터마이즈되는지 여부를 판별할 수 있다.
버튼(330)을 누름으로써 커스터마이즈 드라이버의 작성의 위치를 지정하는데 사용되는 다이얼로그 박스(도시 생략)가 표시된다. 따라서, 커스터마이즈 드라이 버의 작성 위치가 지정될 수 있다.
각종 설정을 수행한 후에 버튼(340)이 눌려지는 때에 설정을 나타내는 데이터에 따라서 커스터마이즈된 프린터 드라이버가 작성된다.
도 4는 도 3에 도시된 UI에서, 버튼(311)을 누름으로 인해 표시되는 프린터 드라이버(이하, 단순히 "드라이버"라 함)의 초기값을 커스터마이즈하는데 사용되는 프린터 드라이버(초기값 커스터마이즈 UI)를 나타낸다.
커스터마이즈 툴은 CPU(1)의 제어 하에 정보 처리 장치의 설정부로서 기능한다. 이러한 설정부는 도 4에 나타낸 UI 창과 같은 설정창, 즉, 문서 속성과 디바이스 속성을 설정하기 위한 설정 화면을 CRT 디스플레이의 화면상에 표시한다.
Windows® NT 4.0, 또는 Windows®2000/XP/Server2003에 통상적으로 인스톨된 프린터 드라이버를 설정하는데 사용되는 UI창에는, 문서를 설정하는데 사용되는 문서 속성의 UI와, 디바이스를 설정하는데 사용되는 프린터 속성의 UI 양측이 동시에 표시될 수는 없다. 그러나, 본 발명의 실시예에 따른 프린터의 커스터마이즈용의 프린터 드라이버 UI는, 프린터 드라이버의 모듈을 이용하는 커스터마이즈 툴에 의해 표시된다. 본 발명의 실시예에 따르면, 문서를 설정하는데 사용되는 문서 속성의 UI와, 디바이스를 설정하는데 사용되는 프린터 속성의 UI 양측이 동시에 하나의 UI 창으로 표시된다(도 4 참조). 도 4에 도시된 바와 같이, 네 종류의 UI 창, 즉, 페이지 설정 UI창(401), 마무리 UI창(402), 급지 UI창(403), 및 인쇄품질 UI창(404)이 문서 속성 UI창으로서 표시될 수 있다. 디바이스 설정 UI(405)는 프린터 속성 UI로서 표시될 수 있다. 따라서, 문서 속성 초기값 및 프린터 속성의 초기값 이 UI 창(401 내지 405)을 통해 설정될 수 있다.
도 4에 도시된 UI는 커스터마이즈 대상이 아닌 설정에 대하여 사용자에 의해 입력된 데이터가 접수되지 않도록 구성된다. 이는, 예컨대, 참조 번호 410에 의해 지정된 그레이 아웃 표시에 의해 표시되어 있다.
도 5는 문서 속성 표시 컨트롤 설정 UI를 나타내는 도면이다. 도 3에 나타낸 버튼(321)이 눌려지는 경우 호스트 컴퓨터(3000)의 CRT 디스플레이(10)의 화면상에 문서 속성 표시 제어 설정 UI창이 표시된다.
도 5에 나타낸 예에 있어서, 다섯 종류의 표시 제어 설정이 수행되는데, 즉, 페이지 설정 UI 창(501), 마무리 UI 창(502), 급지 UI창(503), 인쇄품질 UI 창(504), 및 공통 UI 창(505)이 표시된다. 페이지 설정 UI 창(503), 마무리 UI 창(502), 급지 UI 창(503), 및 인쇄 품질 UI 창(504)에 관하여는, 도 4에 도시된 관련 문서 속성 UI 창에 대응하는 표시 제어 설정이 수행될 수 있다. 공통 UI 창(505)은 관련 UI 창들 사이에서 공통인 표시 제어 설정을 수행할 수 있다.
참조 번호 506은, 컨트롤 항목 "Job 0perations"의 설정을 구체적으로 나타낸다. 유효 표시(통상적인 표시), 무효 표시(컨트롤 항목들이 동작되지 않도록 항상 컨트롤 항목들을 Disable 표시), 비표시(Hide 표시)가 지정될 수 있다. 마찬가지로, 기타의 컨트롤 항목에 대하여 개별적으로 유효(컨트롤 항목이 동작될 수 있도록 항목의 표시를 가능하게 함), 무효, 비표시가 설정되어, 문서 속성 UI 각각의 지시를 제어한다. 따라서, 문서 속성 UI 창의 항목들에 해당하는 설정 데이터의 표시가 제어될 수 있다. 설정 데이터를 유저가 입력하는 경우, 커스터마이즈 툴은 GPD(generic printer driver) 파일 또는 UPD 파일에 입력 데이터를 기입한다. 무효 표시의 일례로서, 컨트롤 항목의 그레이 아웃 표시가 있다. 그 후, 컨트롤 항목은 사용자에 의해 동작될 수 없다.
커스터마이즈 툴은 CPU(1)의 제어 하에서 정보 처리 장치의 표시 제어부로서 기능한다. 표시 제어부는 설정된 문서의 속성(컨트롤 항목을 포함)에 따라서 UI의 항목들의 유효 표시, 무효 표시, 및 비표시를 제어할 수 있다.
다음으로, 도 6을 참조하여 커스터마이즈 툴의 기본적인 동작을 설명한다. 기본 동작이 수행되는 경우에는, 호스트 컴퓨터(300)의 CPU(1)에 의해 실행되는 커스터마이즈 툴이 기본 동작을 수행하는 주체인 것으로 가정한다.
우선, 단계 S601에서, 유저가 커스터마이즈 툴을 기동시킨다. 커스터마이즈 툴의 초기화가 수행된다. 단계 S602에서, 커스터마이즈 툴은 CRT 디스플레이(10)의 화면상에 도 3을 참조하여 설명된 UI 창을 표시한다. 단계 S603에서, 커스터마이즈되어야 할 프린터 드라이버의 인스톨 세트가 유저에 의해 도 3의 UI 창에서 지정된다. 단계 S604에서, 지정된 인스톨 세트가 체크된다.
인스톨 세트의 체크에 있어서, 커스터마이즈 툴은 INF 파일(701, 710, 및 720)(도 7에 도시된 프린터 드라이버의 인스톨 정보를 기술하는 파일)로부터 지정된 인스톨 세트를 OS가 지원할 수 있는지 여부, 및 지정된 프린터 드라이버가 커스터마이즈 툴로 커스터마이즈되어야 하는지 여부를 판정한다.
정보 처리 장치는, 속성들(문서의 설정을 수행하는데 사용되는 문서 속성의 초기값 및, 디바이스의 설정을 수행하는데 사용되는 프린터 속성의 초기값)을 설정 함으로써 프린터를 제어하는 디바이스 드라이버를 커스터마이즈하도록 구성된다. 바람직하게는, 정보 처리 장치는 복수의 디바이스 드라이버들을 특정하는 특정부와, 일회의 디바이스 드라이버 커스터마이즈 지시에 응답하여, 문서의 속성 또는 디바이스 속성에 대응하는 속성 정보를, 특정부에 의해 특정된 복수의 디바이스 드라이버에 대하여 설정하는 설정부를 포함한다. 이러한 경우, 정보 처리 장치의 전술한 각 부는 CPU(1)의 제어하에서 커스터마이즈 툴을 실행함으로써 처리를 수행한다.
도 7은 프린터 드라이버의 인스톨 정보를 기술하는 INF 파일 각각의 기술 내용을 나타낸 도면이다. 각각의 INF 파일은 모듈 기술 정보(도시 생략)를 포함한다. 모듈 기술 정보에 따라서, 커스터마이즈 툴은 프린터 드라이버의 UI 처리를 수행하는 모듈을 지정할 수 있다고 가정한다. 도 7에서, 참조 번호 700은 Windows® 98/ME 용의 INF 파일의 일부를 나타낸다. 참조 번호 710은 Windows® NT4.0의 INF 파일의 일부를 나타낸다. 참조 번호 720은 Windows® 2000/XP/Server2003의 INF 파일의 일부를 나타낸다. CPU(1)에 의해 실행되는 커스터마이즈 툴은, INF 파일(700)의 "서명(Singnature)"에 대하여 설정된 값이 문자열 자원($CHICAGO$)인 경우, 프린터 드라이버가 Windows®98/ME 용인 것으로 판단한다.
또한, 커스터마이즈 툴은, INF 파일(710 또는 720)의 "서명(Singnature)"에 대한 설정값(740 또는 750)이 문자열 자원($WindowsNT$)인 경우, 프린터 드라이버가 Windows®NT4.0 용의 프린터 드라이버, 또는 Windows®2000/XP/Server2003 용의 프린터 드라이버인 것으로 판단한다. 그 후, 판정 처리를 세분화하여, INF 파일 (710 또는 720)의 "DISK1"(760 또는 770)에 대하여 설정된 문자열 자원이 문자열 "NT"를 포함하는 경우 프린트 드라이버가 Windows® NT4.0 용의 프린터 드라이버인 것으로 판정한다. 그렇지 않은 경우, 커스터마이즈 툴은 프린터 드라이버가 Windows® 2000/XP/Server2003 용의 프린터 드라이버인 것으로 판정한다.
커스터마이즈 가능한 프린터 드라이버에 대응하는 INF 파일은 프린터 드라이버가 커스터마이즈를 지원한다는 것을 나타내는 문자열 자원을 포함한다. 따라서, 판정이 이루어지는 경우, 커스터마이즈 가능한 프린터 드라이버에 대응하는 INF 파일에 문자열 자원이 포함되는지 여부를 커스터마이즈 툴이 판정한다. 따라서, 커스터마이즈 툴은 프린터 드라이버가 커스터마이즈를 지원하는지 여부를 판정할 수 있다.
도 6으로 돌아가서, 단계 S605에서, 커스터마이즈 툴이 프린터 드라이버가 커스터마이즈를 지원하지 않는 것으로 판정하는 경우(단계 S605의 NO), 단계 S610으로 진행하여, 에러 처리가 수행된다. 따라서, 단계 S603으로 다시 돌아가, 인스톨 세트가 지정된다.
한편, 단계 S605에서 커스터마이즈 툴이 프린터 드라이버가 커스터마이즈를 지원하는 것으로 판정하는 경우(단계 S605에서 YES), 단계 S606으로 진행한다. 그 후, 커스터마이즈 툴은 CRT 디스플레이 화면상에, 도 3, 도 4, 또는 도 5의 전술한 서명에서 기술하였던 UI 창을 표시하도록 CRTC(6)를 제어하고, 프린터 드라이버의 커스터마이즈에 대한 설정을 가능하게 한다. 도 3, 도 4, 또는 도 5의 전술한 설명에서의 입력 데이터 세트는 커스터마이즈 데이터로서 채용된다. 커스터마이즈 데이터는 프린터 드라이버에 의해 판독가능한 GPD 파일에 설정된다. 장치에 프린터 드라이버가 인스톨되고, 가동 상태에 설정되면, GPD 파일에 포함된 설정값을 프린터 드라이버가 판독한다. 그 후, GPD 파일의 커스터마이즈된 값이 프린터 드라이버에 반영된다. 예컨대, 자주 사용되는 인쇄 설정값(예를 들어, "양면" 및 "2 in 1" 등)이 프리셋되어, 프린터 드라이버에 미리 반영된다. 따라서, 자주 사용되는 인쇄 설정값 또는 커스터마이즈된 디폴트 인쇄 설정값이 프린터 드라이버에 설정된다. 커스터마이즈된 디폴트 인쇄 설정값은, 가동 상태가 비동작 상태가 되도록 드라이버에 지시되는 경우 드라이버에 설정된다.
단계 S607에서, 커스터마이즈 드라이버를 작성하도록 지시가 주어지면, 단계 S608에서 커스터마이즈 드라이버의 작성이 수행된다. 도 17은 단계 S608에서 수행되는 실제적인 동작을 나타낸 도면으로서, 또한 하나의 드라이버 세트 내에 포함되는 복수의 프린터 드라이버를 일괄하여 커스터마이즈하는 처리의 흐름을 나타낸다.
커스터마이즈 드라이버를 작성하는 처리에 있어서, 커스터마이즈 툴은 먼저 단계 S1701에서 커스터마이즈의 위치에서 커스터마이즈 드라이버의 작성 위치로 인스톨 세트를 복사한다. 이어서, 커스터마이즈 데이터가 설정되는 디바이스 드라이버를 특정하기 위하여, 단계 S1702에서, 커스터마이즈 툴은, INF 파일에 리스트화된 프린터 드라이버의 순서대로(예컨대, 도 14의 경우, 프린터 모델 3, 프린터 모델 7, 프린터 모델 1, 및 프린터 모델 2의 순서로)프린터 드라이버 각각에 상응하여 커스터마이즈 데이터가 설정되어있는지 여부를 체크한다. 커스터마이즈 툴은 식별 정보의 유무에 따라서 커스터마이즈 데이터가 설정되어있는지 여부(도 15 미 도 16을 참조하여 설명함)를 판정할 수 있다. 커스터마이즈 툴은 예컨대 사용자에 의해 외부적으로 입력되는 선택 지시에 응답하여 커스터마이즈 데이터가 설졍되는 디바이스 드라이버를 특정하여도 된다. 이러한 경우, 예컨대, 프린터 드라이버의 종류, 커스터마이즈 데이터의 저장 위치를 나타내는 INF 파일에 기재된 정보는 유저에 의해 입력된다.
커스터마이즈 데이터가 대응하는 프린터 드라이버에 대하여 설정된다면(단계 S1703에서 YES), 단계 S1704에 진행하여, 커스터마이즈 툴은 커스터마이즈 데이터를 커스터마이즈가 복사되는 인스톨 세트에 포함된 커스터마이즈 드라이버 정보 파일(UPD 파일 또는 GPD 파일이라고도 함)에 기입한다. 그 후, 단계 S1705에서 커스터마이즈된 드라이버가 작성된다. 이어서, 단계 S1706에서, 리스트화된 모든 프린터 드라이버에 대하여 체크가 수행되지 않은 것으로 판정되면(단계 S1706에서 NO), 단계 S1703으로 복귀하여, 다음의 프린터 드라이버에 대하여 커스터마이즈 데이터가 설정되어 있는지 여부가 체크된다. 설정되어 있다면, 커스터마이즈 툴은 관련 프린터 드라이버에 대응하는 UPD 파일에 커스터마이즈 데이터를 기입하는 동작을 반복한다. 리스트화된 모든 프린터 드라이버에 대하여 체크가 완료된 것으로 판정되는 경우(단계 S1706에서 YES), 도 17에 도시된 플로우차트의 처리는 종료된다. 그 후, 도 6에 도시된 단계 S608에 복구한다. 전술한 처리의 결과, 커스터마이즈 툴은, 하나의 드라이버 세트에 포함된 복수의 프린터 드라이버로부터 커스터마이즈 데이터가 반영되는 커스터마이즈된 드라이버들을 작성한다.
정보 처리 장치는 속성(문서의 설정을 수항하는데 사용되는 문서 속성의 초 기값 및 디바이스의 설정을 수행하는데 사용되는 프린터 속성의 초기값)을 설정함으로써 프린터를 제어하는 디바이스 드라이버(프린터 드라이버)를 커스터마이즈 하도록 구성된다. 정보 처리 장치는 복수의 디바이스 드라이버를 특정하는 특정부와, 하나의 디바이스 드라이버 커스터마이즈 지시에 응답하여, 문서 속성 또는 디바이스 속성에 해당하는 속성 정보를 특정부에 의해 특정된 복수의 디바이스 드라이버에 설정하는 설정부를 포함한다. 전술한 정보 처리 장치의 각 부는 CPU(1)의 제어하에서 커스터마이즈 툴을 실행함으로써 처리를 수행한다.
도 9는 프린터 드라이버를 구성하는 하나의 파일인, 드라이버 정보 파일(UPD 파일 또는 GPD 파일)의 데이터 포맷을 나타낸 도면이다. 도 9에 도시된 바와 같이, UPD 파일(또한, GPD 파일)은 헤더(901), ID 정의 필드(902), 데이터 필트(903)을 포함한다. ID 정의 필드(902)는 데이터 필드(903)에 저장된 데이터의 ID(식별 정보)와, 데이터의 저장 위치(또는 어드레스)의 한 세트를 저장한다. 이에는 ID의 수에 대응하는 수의 세트가 저장된다. 본 실시예에 따른 커스터마이즈 툴은, 커스터마이즈를 위해 정의된 ID에 대응하는 데이터의 값을 변경시킨다. 사용되어야 할 커스터마이즈 데이터의 ID가 ID 정의 필드(902)에 정의되어 있지 않은 경우, 사용되어야 하는 커스터마이즈 데이터에 대응하는 새로운 ID가 ID 정의 필드(902)에 추가된다.
커스터마이즈된 프린터 드라이버는, 커스터마이즈 툴에 의해 커스터마이즈된 데이터 가입되는 GPD 파일(또는, UPD 파일)을 인스톨시 또는 제1회 기동시 판독한다. 또한, 커스터마이즈된 프린터 드라이버는 GPD 파일(또는 UPD 파일)의 ID 정의 필드(902)에 저장된 소정의 ID에 대응하여 저장된 데이터(903)를 판독한다. 예컨대, 커스터마이즈 툴에 의해 작성된 UPD 파일의 ID 정의 필드(902)에 "CUSTOMIZED"를 나타내는 ID가 저장되고, 이에 어드레스 X가 데이터의 저장 위치로서 저장된다고 가정한다.
ID 정의 필드(902)에 "CUSTOMIZED"를 나타내는 ID 정보가 기억된 경우, 커스터마이즈를 지원하는 프린터 드라이버는 인스톨 완료시 또는 제1회 기동시 정보에 대응하는 어드레스를 판독하도록 된다. 따라서, 인스톨의 완료 또는 제1회 기동시에, 이러한 프린터 드라이버는, UPD 파일의 ID 정의 필드(902)에 "CUSTOMIZED"가 포함되는 때에 ID 정의 필드(902)로부터 대응하는 데이터의 어드레스 X를 판독한다. 이어서, 프린터 드라이버는 데이터 필드(903)의 어드레스 X로부터, 실제 드라이버 설정 데이터인, 디바이스 모드의 데이터 구조를 더욱 판독한다. 어드레스 X는 절대 어드레스이어도 된다. 대안으로서, 데이터 필드(903)의 선두 어드레스가 헤더(901)에 저장되고, 데이터 필드(903)의 선두 어드레스로부터의 오프셋 어드레스가 어드레스 X에 설정되도록 데이터 포맷이 이루어질 수도 있다.
커스터마이즈 툴은 CPU(1)의 제어하에서 정보 처리 장치의 표시 제어부로서 기능한다. 표시 제어부는 프린터 드라이버의 기동시에 프린터 드라이버의 드라이버 정보 파일(UPD 파일 또는 GPD 파일)을 참조하여, UPD 파일에 설정된 커스터마이즈 데이터에 따라서 CRT(10)의 화면상에 UI 창을 표시할 수 있다.
본 실시예에서, 커스터마이즈 툴은, 커스터마이즈 데이터로서, 문서를 설정하는데 사용되는 문서 속성에 관한 초기값 데이터(도 4에 도시된 UI 창(401 내지 404)에 의해 설정된 데이터), 디바이스를 설정하는데 사용되는 프린터 속성에 관한 초기값 데이터(도 4에 도시된 UI 창(405)에 의해 설정된 데이터), 및 문서 속성에 관한 UI 창에 컨트롤을 표시하는 방법에 관한 데이터(도 5에 도시된 UI 창에 의해 설정된 데이터)를 UPD 파일에 기입한다. 커스터마이즈된 프린터 드라이버는 인스톨 완료시, 또는 제1회 기동시에, 커스터마이즈 툴에 의해 생성된 UPD 파일을 판독한 후, 커스터마이즈 정보에 따라 동작한다. 따라서, 커스터마이즈된 프린터 드라이버의 동작 환경이 용이하에 구축될 수 있다.
도 6으로 되돌아가, 단계 S608에서 커스터마이즈 드라이버가 작성된 후, 단계 S609에서 종료가 지시되면, 단계 S611에서 커스터마이즈 툴의 동작이 종료된다.
다음, 도 8을 참조하여, CPU(1)에 의해 실행되는 커스터마이즈 툴에 의해 프린터 드라이버의 커스터마이즈용 UI를 표시하는 처리를 설명한다. 호스트 컴퓨터(3000)의 CPU(1)에 의해 실행되는 커스터마이즈 툴은 이러한 동작을 수행하는 주체이다.
도 3에 도시된 버튼(311)이 눌려지는 경우, 단계 S801에서, 커스터마이즈 툴은 INF 파일에 포힘된 모듈 기술 정보에 따라서 UI 처리를 수행하는 프린터 드라이버의 모듈을 특정하고, 모듈이 커스터마이즈 툴에 의해 호출될 수 있도록 모듈을 메모리에 로드한다.
다음, 단계 S802에서, 프린터 드라이버의 모듈에 의해 익스포트(export)되는 함수의 어드레스가 취득된다. 단계 S803에서, 커스터마이즈를 지원하는 프린터 드라이버와 커스터마이즈 툴 사이의 교환을 위한 CSPL 구조(도시 생략)가 초기화된 다. 프린터 드라이버가 인스톨되지 않은 경우에도 프린터 드라이버의 UI가 제어될 수 있도록 CSPL 구조에 각종 정보가 저장된다.
그 후, 단계 S804에서, 속성 시트(커스터마이즈용 드라이버 UI)를 표시하는 동작이 수행된다. 이 때, 도 4에 도시된 바와 같이, 문서 속성과 프린터 속성 쌍방이 동시에 커스터마이즈되어, 양측의 속성 시트가 하나의 UI 창에 표시될 수 있도록 속성 시트를 표시하는 함수가 호출된다.
커스터마이즈용 드라이버 UI 창이 유저에 의해 닫히는 경우, 커스터마이즈용 드라이버 UI에 의해 설정된 정보가 CSPL 구조에 유지된다. 따라서, 단계 S805에서, 커스터마이즈 툴은 CSPL 구조체(DeviceOption 구조체 및 Devmode 구조체를 포함함)로부터 유지되는 정보에 대응하는 프린터 드라이버에 대한 정보를 취득한다.
커스터마이즈 툴은 CPU(1)의 제어하에 디바이스 속성 정보 또는 문서 속성에 대응하는 프린터 드라이버를 나타내는 데이터를 취득하도록 되는 취득부로서 기능하는 부분을 갖는다. 취득부는 프린터 드라이버의 설정에 관한 데이터를 유지하며, 데이터를 전달할 수 있는 데이터 유지부(CPSL 구조체)와 데이터를 송수신함으로 프린터 드라이버에 대한 정보를 취득할 수 있다. 이 때, 취득부는 데이터 유지부(CPSL 구조체)로 하여금 UI 창(도 3 내지 도 5 참조)에 의해 설정된 디바이스 속성 또는 문서 속성에 대응하는 데이터를 유지하도록 되며, 데이터 유지부(CPSL 구조체)로부터 속성에 대응하는 프린터 드라이버에 대한 정보를 커스터마이즈용의 설정 정보로서 취득할 수 있다. 커스터마이즈 툴은 후술하는 UPD 파일에 이러한 데이터 유지부에 의해 유지되는 데이터를 기입한다. 호출시 프린터 드라이버는 커스 터마이즈된 UPD 파일이 존재하는지 여부를 판정한다. 프린터 드라이버가 커스터마이즈된 UPD 파일이 존재하는 것을 판정하는 경우, 프린터 드라이버는 UPD 파일에 포함된 UI 제어 데이터 및 커스터마이즈된 인쇄 설정 데이터를 판독한다. 따라서, 프린터 드라이버의 커스터마이즈 설정이 성취된다.
즉, 커스터마이즈용 설정 정보에 따라서, 표시 제어부로서 기능하는 커스터마이즈 툴부는 프린터 드라이버의 UI 모듈을 호출한다. 호출된 UI 모듈은, 후술하는 의사 API를 사용하여, 컨트롤 항목의 표시를 제어하는데 사용되는 데이터를 지정하는, 도 3 내지 도 5에 도시된 UI 창을 통해 설정되어 인쇄 설정 정보의 디폴트 값을 나타내는 커스터마이즈 정보를 전달하는, 커스터마이즈된 UI 창을 CRT 디스플레이(10)가 표시하도록 한다.
커스터마이즈 설정 정보로서, DeviceOption 구조체(도시 생략)에는 프린터 속성 설정 정보가 설정되며, Devmode 구조체(도시 생략)에는 문서 속성 설정 정보가 설정된다. 커스터마이즈 툴은 커스터마이즈 설정 정보로서 저장된 설정 정보를 취득한다.
그 후, 단계 S806에서, 단계 S801에서 메모리에 미리 로드된 모듈이 그로부터 언로드된다. 이어서, 단계 S807에서 커스터마이즈용 드라이버 UI의 표시가 종료된다.
플로우차트에 나타낸 처리 흐름에 기술된 처리는 프린터 드라이버에 대응하는 OS에 따라 조금씩 변한다. 예컨대, Windows®NT4.0와 Windows®2000/XP/Sewer2003 는, OS가 작동하는 컴퓨터 시스템의 성분인 Common Property Sheet UI 라는 OS의 구조를 이용하고 있다. 따라서, 필요한 전처리가 수행된 후에, Common Property Sheet UI 함수가 호출된다. 한편, Windows®98/ME 에서는, 필요한 전처리가 수행된 후에, Property Sheet 함수가 호출되고, UI가 표시된다. 기본적인 처리 흐름은 도 8에 도시되어 있다.
도 10a는 프린터 드라이버에 제공되는 Windows® API(Application Programming Interface)를 호출하는 방법을 설명하는 도면이다. 장치에 프린터 드라이버가 인스톨되어 있는 경우, 프린터 드라이버 UI 처리(1010)에서, Windows® API(도면에서는, "API"라 함)가 경우 단계 1040(통상적인 호출)에 호출된다. 장치에 커스터마이즈를 지원하는 프린터 드라이버가 인스톨되어 있지 않은 경우이고, 프린터 드라이버 UI 처리(1010)에서 의사 Windows® API(이하, 도면에서 "의사 API"라 함)가 커스터마이즈 툴에 의해 경우 단계 1050에 호출되는 경우, 관련 의사 Windows® API를 사용하여 의사적인 방법으로 Windows® API에 의해 수행되는 처리가 시뮬레이션된다. 그 후, 그 결과의 데이터는 프린터 드라이버 UI 처리(1010)으로 리턴된다.
도 10b는 Windows® API 함수와 관련 의사 API 함수명 사이의 대응관계를 나타내는 테이블(1030)이다(본 도면에서 각각 "API" 및 "의사 API 명"이라 함). 본 대응 관계는 인스톨 된 프린터 드라이버에 미리 설정될 수 있다고 가정한다. 통상적으로, 프린터 드라이버용 유저 인터페이스를 제어하는 프로그램은 프린터 드라이버에 입력되는 데이터에 따라 Windows® API를 호출하도록 된다. 본 발명은, Windows® API가 프린터 드라이버가 인스톨되지 않은 상태에서 의사 API가 호출될 수 있도록 구성된다.
의사 Windows® API가 커스터마이즈 툴로부터 호출되는 경우, 의사 Windows® API가 Windows® API에 의해 수행되는 처리를 시뮬레이션하여, 이 처리를 프린터 드라이버 UI 처리(1010)에 리턴시킨다. OS에 대하여 프린터 드라이버가 인스톨된 후에 통상적인 드라이버 UI로서 프린터 드라이버 UI가 호출되는 경우, 통상적인 Windows® API(1020)가 호출되고, 프린터 드라이버 UI 처리(1010)로 복귀된다.
도 11은 의사 Windows® API(도면에서 간단히 "의사 API"라고 함)를 호출하는 처리의 흐름을 나타낸 흐름도이다. 호스트 컴퓨터(3000)의 CPU(1)에 의해 실행되는 커스터마이즈 툴은 이러한 처리에서 동작을 수행하는 주체이다.
먼저, 단계 S1110에서, 커스터마이즈 툴은, 의사 Windows® API 함수의 인수에 포함된 프린터 핸들(인수)가 커스터마이즈 툴로부터의 호출시 전달되는 CSPL 구조체의 어드레스 정보(이하, 간단히 "어드레스 정보"라 함)와 일치하는지 여부를 판정한다. 이러한 판정 방법은, CSPL 구조체의 선두 멤버가 CSPL 구조체의 사이즈를 표시하도록 된다. 따라서, 전달된 프린터 핸들(인수)는 CSPL 구조체의 선두 어드레스로서 취급하여 참조된다. 인수의 프린터 핸들이 CSPL 구조체의 크기와 일치하는 경우, 커스터마이즈 툴은 프린터 핸들(인수)이 CSPL 구조체의 어드레스인 것으로 판정한다(단계 S1110에서 YES). 프린터 드라이버의 UI 모듈은 처리 결과를 나타내는 데이터, 예컨대, UI를 통해 입력되는 컨트롤의 표시의 지정 및 인쇄 설정 항목의 값들을 나타내는 데이터를, 핸들에 의해 지정되는 구조체에 저장한다. 그 후, 처리는 종료된다.
인수의 프린터 핸들이 CSPL 구조체의 어드레스가 아닌 경우(단계 S1110에서 NO), 프린터 드라이버의 통상적인 동작이 수행된다. 따라서, Windows® API(이하, 도면에서 단순히 "API"라 함)를 호출하는 동작이 단계 S1120에서 수행된다. 그 후, 처리는 종료된다.
단계 S1110에서, 인수의 프린터 핸들이 CSPL 구조체의 어드레스와 일치하지 않는 것으로 판정되는 경우(단계 S1110에서 YES), 단계 S1130으로 진행하여, 커스터마이즈 툴로부터 Windows® 의사 API가 호출된다. 이러한 경우, 프린터 드라이버가 인스톨되지 않은 경우, Windows® API는 호출될 수 없다. 따라서, 단계 S1130에서, Windows® API에 의해 수행되는 것과 동등한 처리가 의사 Windows® API에 의해 수행된다. 그 후, 동등한 처리의 결과가 프린터 드라이버 UI 처리(1010)에 리턴된다. 그 후, 동등한 처리가 종료된다.
따라서, CPU(1)의 제어하에서, 커스터마이즈 툴 함수는 정보 처리 장치의 선택부로서 기능한다. 선택부는 데이터 유지부(CSPL 구조체)에 의해 유지되는 선두 어드레스를 나타내는 어드레스 정보에 따라서, 사용되어야 할 (또는, 호출되어야 할) 어플리케이션 프로그램 인터페이스(Windows® API 또는 의사 Windows® API)를 선택한다.
도 12는 의사 Windows® API의 일례로서 프린터 드라이버로부터 CSPL_GetVersionEx 함수(도 10b의 1040 참조)를 호출하는 동작의 처리 흐름을 나타낸 플로우차트이다. 이 동작이 수행되는 때에, 호스트 컴퓨터(3000)의 CPU(1)에 의해 실행되는 커스터마이즈 툴에 의해 호출되는 프린터 드라이버 UI가 이러한 처 리를 수행하는 주체라고 가정한다. 또한, 커스터마이즈 툴 함수에 의해 CSPL_GetVersionEx 함수가 호출된다. CSPL_GetVersionEx 함수에 의해 시뮬레이션되는 Windows® API 함수는 Windows® GetVersionEx 이다(도 10b에 도시된 표 1030 참조). 이러한 Windows® API 함수는 호스트 컴퓨터상에서 동작하는 OS의 버젼의 정보를 프린터 드라이버 UI의 측에서 수행되는 처리(1010)에 리턴하는 처리를 수행한다.
우선, 단계 S1210에서, 커스터마이즈 툴의 CSPL_GetVersionEx 함수는, 함수의 인수인 프린터 핸들이 API 함수 호출시 전달되는 CSPL 구조체의 어드레인지 여부를 판정한다. 아닌 경우(단계 S1210에서 NO), 단계 S1210으로 진행하여, 통상적인 프린터 드라이버에 대하여 동작하는 Windows® GetVersionEx 함수(1040)가 호출된다. 이러한 판정 방법은 도 11에 도시된 단계 S1110의 설명에서 기술된 것과 유사하다. 그 후, 처리가 종료된다.
한편, 단계 S1210에서, 함수의 인수가 CSPL 구조체의 어드레스와 일치하는것으로 판정되는 경우(단계 S1210에서 YES), 단계 S1230으로 진행하여, CSPL 구조체에 유지되는 프린터 드라이버에 대응하는 OS에 대한 정보에 따라 GetVersionEx 함수에 의해 수행되어야 하는 처리가 의사적인 방법으로 수행된다(즉, GetVersionEx 함수에 의해 수행되는 것과 동등한 처리가 수행됨). 단계 S1230에서, CSPL_GetVersionEx 함수는 GetVersionEx 함수에 의해 취득된 것과 동일한 처리 결과를 프린터 드라이버 UI 모듈에 리턴한다. 다른 함수에 대하여도 동일하게 수행된다.
예컨대, 도 3 내지 도 5에 도시된 UI 창에 설정된 디바이스 속성 또는 문서 속성에 대응하여 어플리케이션 프로그램 인터페이스(의사 Windows® API)가 호출된다. 어플리케이션 프로그램 인터페이스는 설정된 문서 속성 또는 설정된 디바이스 속성에 대응하는 프린터 드라이버에서 수행되는 처리를 의사적인 방법으로 수행한다(즉, Windows® API에 의해 수행되는 처리와 동등한 처리를 수행함).
단계 S1230 또는 S1220에서 처리가 수행된 후, 도 12에 도시된 플로우차트의 처리가 종료된다.
결과적으로, 예컨대, Windows®98/ME 드라이버 모듈의 UI 제어에 관한 처리가, 커스터마이즈 툴로부터의 API 를 호출함으로써 수행되는 경우, 실제로 동작하고 있는 OS는 커스터마이즈 툴에 대응하는 Windows® 2000/XP/ Server2003 이다. 그러나, CSPL 구조체에는, 드라이버 모듈에 대응하는 OS가 Windows®98/ME 인 것으로 표시하는 정보가 포함되어 있다. 따라서, "Windows®ME"를 표시하는 정보가 OS의 버전을 나타내는 정보로서 이에 리턴된다. 따라서, Windows®98/ME 드라이버 모듈의 UI 제어 처리의 파탄의 발생이 방지될 수 있다.
즉, 커스터마이즈의 대상은, Windows®98/ME 의 프린터 드라이버와 예컨대, INF 파일에 의해 제공되는 드라이버 정보, 및 드라이버 유저 인터페이스 모듈이다. 본 실시예에 있어서, 커스터마이즈 툴은 Windows® 2000/XP/Server2003에 의해 지원된다. 커스터마이즈 툴이 실행되는 환경은, 이들 OS 중의 하나에 의해 제어되는 것으로 가정한다. CSPL 구조체는 도 8에 도시된 단계 S803에서 초기화된다. 이 때, 예컨대, 드라이버 모듈을 지원하는 OS가 Windows®98/ME 인 것을 나타내는 정 보가 OS의 버전을 나타내는 OS 버전 정보로서 CSPL 구조체에 기입된다. 따라서, CSPL 구조체는, 드라이버 모듈이 지원하는 OS가 Windows®98/ME 라는 것을 나타내는 정보(즉, OS 버전 정보)를 포함하고 있다. 따라서, CSPL_GetVersionEx 함수는 CSPL 구조체에 포함된 OS 버전 정보에 액세스하여, 호출 프린터 드라이버 UI 모듈에 "Windows®98/ME"를 나타내는 값을 리턴한다.
다른 Windows® API들에 대하여도 동일하게 수행한다. 실제로 아무런 프린터 드라이버가 인스톨되지 않으므로 Windows® API를 호출함에 의해 드라이버 모듈 UI 제어의 처리에서 문제가 발생하는 경우, 의사 함수(의사 API 함수)에 의해서 Windows® API 함수에 의해 수행된 처리가 시뮬레이션된다. 따라서, Windows® API의 동작이 UI 제어에 가상적으로 반영될 수 있다.
명시적으로 기술되어 있지는 않지만, Windows® 98/ME 프린터 드라이버는 16 비트 환경에서 동작하는 모듈이므로, 16 비트 환경에서 UI 처리가 수행된다. 그러나, 본 발명에 따라 커스터마이즈된 Windows® 98/ME 프린터 드라이버는 성크 메카니즘(thunking mechanism)의 성크-업 함수(thunking-up function)를 이용하여 32 비트에서 실질적인 UI 처리를 수행한다. 따라서, 본 발명에 따른 커스터마이즈 툴은, 실질적인 UI 처리가 수행되는, 32 비트 환경에서 동작하는 UI 처리 함수를 비교적 용이하게 호출할 수 있으며, 또한 Windows® 98/ME UI를 비교적 용이하게 표시 및 제어할 수 있다.
즉, 커스터마이즈 툴은 인쇄 설정 데이터를 포함하는 속성을 취득한다. 그 후, 커스터마이즈 툴은 OS에 기동가능하게 디바이스 드라이버를 등록한다. 즉, 커 스터마이즈 툴은 OS의 관리자 권한을 이용하여, 디바이스 드라이버가 판독될 수 있도록 인쇄 설정 데이터를 포함하는 취득된 속성을 디바이스 드라이버에 설정한다. OS 에 의해 관리되는 레지스트리 영역에 속성들을 등록함으로써 디바이스 드라이버는 인스톨되지 않는다. 속성이 이에 설정되는 경우, 디바이스 드라이버는 OS에 의해 관리되는 파일 시스템의 유저 영역에 저장된다. 속성들은 커스터마이즈 툴에 의해서 UPD 파일에 저장된다. 작성된 UPD 파일은 프린터 드라이버, 프린터 드라이버 UI 모듈, 및 커스터마이즈 대상의 INF 파일과 함께 인스톨 세트를 구성한다. 작성된 인스톨 세트는 기록 매체 및 통신 매체를 통해 클라이언트 컴퓨터 각각에 분산된다. 인스톨러는 INF 파일에 기술된 정보에 따라서 인스톨을 수행한다. 인스톨러는 각 Devmode 구조체 및 DeviceOption 의 해당 항목의 값으로서 UPD 파일로부터 판독된 각각의 설정 항목에 해당하는 값을 복사한다. 프린터 드라이버 및 프린터 드라이버 UI 모듈은 Devmode 구조체 및 DeviceOption 구조체에 저장된 각 항목의 값을 참조하여 동작한다.
전술한 처리는 어플리케이션 프로그램의 일례인 커스터마이즈 툴에 의해 수행된다. 커스터마이즈 툴은 운영 체제를 대신하여 디바이스 드라이버를 통해 입력되는 정보에 응답한다.
커스터마이즈 툴에 의해 이루어지는 이러한 의사 프록시 응답은, 디바이스 드라이버로 하여금, 에러 처리를 일으키지 않고서 OS에 의해 이루어지는 응답으로서 어플리케이션에 의해 이루어지는 응답을 인식하도록 하며, 유저로부터 입력되는 데이터를 사용하여 후속의 설정 처리를 속행하도록 한다.
커스터마이즈 툴은 디바이스 드라이버에 대응하는 의사 API를 포함한다. 또한, 커스터마이즈 툴은, 복수의 각종 운영체제(예컨대, Windows® NT, 및 Windows® 95)에 대하여 디바이스 드라이버에, 인쇄 설정 데이터를 포함하는 속성을 설정할 수 있다
커스터마이즈 툴은 하나의 지시에 응답하여 복수의 디바이스 드라이버에, 인쇄 설정에 관하여 커스터마이즈 툴에 의해 취득되는 정보를 설정한다.
전술한 바와 같이, 본 발명에 따른 의사 API는 디바이스 드라이버에 대하여 커스터마이즈 툴이 운영체제와 같이 행동하도록 하여, 운영 체제에 대하여 기동 상태에 디바이스 드라이버가 인스톨된 것처럼 보이도록 한다. 커스터마이즈 툴이 의사적인 방법으로 디바이스 드라이버에 대하여 응답하지 않는 경우, 디바이스 드라이버는 에러 처리 환경으로 절환한다. 따라서, 커스터마이즈 툴은 디바이스 드라이버를 인스톨하지 않고 디바이스 드라이버의 커스터마이즈를 속행할 수 있다.
도 13은 커스터마이즈에 대응하여 프린터 드라이버의 속성을 설정하는데 사용되는 UI를 제어하는 처리의 흐름을 나타낸 플로우차트이다. 호스트 컴퓨터(3000)의 CPU(1)에 의해 실행되는 커스터마이즈 툴은 처리를 수행하는 주체이다. 도 13에 도시된 수순에 있어서, 도 11 및 도 12에 도시된 의사 API 함수가 호출된다. 따라서, 속성 시트의 표시, 파라미터의 취득, 및 설정값의 입력이 실현된다.
우선, 단계 S1300에서, UI 제어 지시가 입력되는 때에 커스터마이즈 툴이 기동된다. 그 후, 단계 S1310에서, UI가 초기화된다. 이어서, 단계 S1320에서, UI 표시에 관한 커스터마이즈 정보가 도 9에 도시된 드라이버 정보 파일에 포함되어 있다면(단계 S1320에서 YES), 단계 S1330으로 진행한다. 제어 지시는 UI 화면 컨트롤(Disable 컨트롤 및 Hide 컨트롤)에 전달된다. 즉, 단계 S1340에서, 장치는 유저의 조작을 대기하도록 된다. 한편, 드라이버 정보 파일이 없다면(단계 S1320에서 NO), 단계 S1330을 스킵한다. 그 후, 단계 S1340에서, 장치는 유저의 조작을 대기하도록 된다.
그 후, 단계 S1340에서, 유저가 조작을 수행할 때까지 장치는 기다린다. 유저가 UI 창을 폐쇄하는 조작을 수행하면(단계 S1350에서 YES), 단계 S1370에서 UI 처리가 종료된다. 유저의 조작이 또 다른 종류의 것이라면(단계 S1350의 NO), 단계 S1360에서 유저의 조작에 대응하는 UI 제어 처리가 수행된다. 이어서, 단계 S1320에 복귀된다.
UI를 통해 입력된 속성 정보가 CSPL 구조체를 통해 다시 프린터 드라이버 정보 파일(즉, UPD 파일)에 저장된다. 이 때, 도 3에 도시된 커스터마이즈 코드(Z)는 예비 식별 코드와 함께 프린터 드라이버 정보 파일에 저장된다.
이에 의해, 도 5에 도시된 창에서 지정된 컨트롤 항목을 표시하는 방법에 관한 커스터마이즈 데이터는 도 9에 도시된 드라이버 정보 파일에 유지된다. 따라서, 커스터마이즈 데이터에 따른 UI 제어 표시가 성취될 수 있다.
본 실시예는, 커스터마이즈 데이터가 UPD 파일인 드라이버 정보 파일에 기입되도록 구성되었다. 그러나, 프린터 드라이버가 참조되어 또한 분석 가능한 경우에는, 드라이버 정보 파일은 UPD 파일에 한하지 않는다. 예컨대, 차기 Windows® 버전인 Longhorn 에서는 UPD 파일이 프린터 드라이버의 표준 드라이버 정보 파일로 서 채용되어, 커스터마이즈 정보가 파일에 포함될 수 있다.
본 실시예에 따르면, 복수의 프린터 드라이버가, 하나의 프린터 드라이버에서 커스터마이즈 조작이 수행된 후에, 한 번의 커스터마이즈 완료 지시에 의해 동시에 커스터마이즈될 수 있다.
프린터 드라이버가, 커스터마이즈를 지원하지 않는 OS에 대하여 제공되는 경우에도, 유저가 원하는 커스터마이즈를 반영한 커스터마이즈 프린터 드라이버가 작성될 수 있다.
또한, 프린터 드라이버의 UI 창과 동등한 UI 창에 의해 프린터 드라이버의 초기 설정값의 커스터마이즈가 수행될 수 있다, 따라서, 초기 설정값들의 커스터마이즈가 용이하게 성취될 수 있다. 커스터마이즈를 반영하여 UI 창에 표시 항목의 유효 표시, 무효 표시, 및 비표시를 제어함으로으로써 유저 조작의 효율성 및 장치의 조작성이 향상될 수 있다.
커스터마이즈 드라이버는 인스톨 세트의 커스터마이즈 되지 않은 드라이버와 마찬가지로 구성된다. 따라서, 커스터마이즈 드라이버는 Microsoft®사의 Windows® 운영체제, 또는 차기 Windows® OS인 Longhorn에서의, 소위 Point&Print 환경에서도 드라이버로서 동작하는 것이 가능하다. 따라서, 커스터마이즈 드라이버의 범용성이 향상될 수 있다.
본 발명의 특징은, 전술한 실시예의 기능을 실현하는 소프트웨어 프로그램 코드가 기억된 기억 매체(또는 기록 매체)를 시스템 혹은 장치에 공급하여, 그 시스템 혹은 장치의 컴퓨터(또는 CPU, MPU)가 기억 매체에 저장된 프로그램 코드를 판독하여 실행함으로써 달성될 수 있다.
이러한 경우, 기억 매체로부터 판독된 프로그램 코드 자체가 전술한 실시예의 기능을 실현하게 된다. 따라서, 그 프로그램 코드를 기억한 기억 매체는 본 발명을 구성하게 된다. 또한, 컴퓨터에서 판독된 프로그램 코드를 실행함으로써, 전술한 실시예의 기능이 실현될 수 있을 뿐만 아니라, 그 프로그램 코드에 의해 발행되는 지시에 따라, 컴퓨터 상에서 기동하고 있는 OS 에 의해 실제의 처리의 일부 또는 전부를 수행함으로써, 전술한 실시예의 기능이 실현될 수도 있다.
또한, 기억 매체로부터 판독된 프로그램 코드가, 컴퓨터에 삽입된 기능 확장 카드나 컴퓨터에 접속된 기능 확장 유닛에 제공되는 메모리에 기입된 후, 프로그램 코드의 지시에 따라서, 컴퓨터에 삽입된 기능 확장 카드 또는 기능 확장 유닛에 제공되는 CPU 등에 의해 실제의 처리의 일부 또는 전부를 수행함으로써 전술한 실시예의 기능이 실현될 수도 있다.
본 발명이 상기 기억 매체에 적용되는 경우, 기억 매체는 실시예에서 전술한 플로우차트(도 6, 8, 11 내지 13, 및 17)에 대응하는 프로그램 코드를 저장한다.
바람직한 실시예를 참조하여 본 발명을 설명하였지만, 본 발명은 개시된 바람직한 실시예에 한하지 않음을 이해하여야 한다. 이하의 청구범위의 범주는 변경예, 균등한 구조 및 기능들 모두를 포괄하도록 최광의 해석에 따라야 한다.
본 실시예에 따르면, 복수의 프린터 드라이버가, 하나의 프린터 드라이버에서 커스터마이즈 조작이 수행된 후에, 한 번의 커스터마이즈 완료 지시에 의해 동 시에 커스터마이즈될 수 있다.
프린터 드라이버가, 커스터마이즈를 지원하지 않는 OS에 대하여 제공되는 경우에도, 유저가 원하는 커스터마이즈를 반영한 커스터마이즈 프린터 드라이버가 작성될 수 있다.
또한, 프린터 드라이버의 UI 창과 동등한 UI 창에 의해 프린터 드라이버의 초기 설정값의 커스터마이즈가 수행될 수 있다, 따라서, 초기 설정값들의 커스터마이즈가 용이하게 성취될 수 있다. 커스터마이즈를 반영하여 UI 창에 표시 항목의 유효 표시, 무효 표시, 및 비표시를 제어함으로으로써 유저 조작의 효율성 및 장치의 조작성이 향상될 수 있다.

Claims (26)

  1. 디바이스를 제어하는 디바이스 드라이버를 그 속성을 설정함으로써 커스터마이즈(customize)하도록 구성된 정보 처리 장치로서,
    복수의 디바이스 드라이버를 특정하는 특정부; 및
    상기 특정부에 의해 특정된 복수의 디바이스 드라이버 각각에서 커스터마이즈 동작이 수행된 후에 입력되는 일회의 디바이스 드라이버 커스터마이즈 완료 지시에 응답하여, 디바이스 드라이버에 대응하는 속성 정보를 상기 특정부에 의해 특정되는 상기 복수의 디바이스 드라이버에 설정하는 설정부
    를 포함하고,
    상기 설정부는 상기 복수의 디바이스 드라이버에 대응하는 속성 정보가 설정되어 있는지 여부를 판정하며,
    상기 설정부는 상기 속성 정보를 정보 파일에 기입하는 정보 처리 장치.
  2. 삭제
  3. 제1항에 있어서,
    상기 설정된 속성 정보에 해당하는 데이터에 따라 커스터마이즈된 유저 인터페이스 창을 표시부 상에 표시하는 표시 제어부를 더 포함하는 정보 처리 장치.
  4. 제3항에 있어서,
    상기 표시 제어부는 상기 설정부에 의해 설정된 속성 정보에 따라 상기 유저 인터페이스 창에 있어서의 항목의 유효 표시, 무효 표시, 및 비표시 중 적어도 하나를 제어하는 정보 처리 장치.
  5. 제4항에 있어서,
    상기 표시 제어부는, 상기 디바이스 드라이버의 기동시에, 상기 디바이스 드라이버에 대응하는 정보 파일을 참조함으로써 취득되는 속성 정보에 따라서 상기 유저 인터페이스 창을 표시하는 정보 처리 장치.
  6. 제1항에 있어서,
    상기 복수의 디바이스 드라이버는 복수의 디바이이스 모델에 각각 대응하며, 동일한 디바이스 드라이버 세트에 포함되며,
    상기 설정부는 상기 복수의 디바이스 드라이버에 의해 판독될 수 있는 설정 파일에 상기 속성 정보를 기입하는 정보 처리 장치.
  7. 제1항에 있어서,
    상기 특정부는 소정의 메모리에 기억된 소정의 데이터로부터 디바이스 드라이버의 리스트 또는 디바이스의 모델을 판독하고,
    상기 특정부는 상기 속성 정보가 상기 설정부에 의해 설정되는 디바이스 드 라이버를 특정하는 정보 처리 장치.
  8. 제1항에 있어서,
    상기 특정부는 상기 속성 정보를 상기 설정부에 의해 설정하기 위한 디바이스 드라이버를 외부 선택 지시에 따라서 특정하는 정보 처리 장치.
  9. 제1항에 있어서,
    상기 디바이스는 프린터인 정보 처리 장치.
  10. 디바이스를 제어하기 위한 디바이스 드라이버를 그 속성 정보를 설정함으로써 커스터마이즈하도록 구성된 정보 처리 방법으로서,
    복수의 디바이스 드라이버를 특정하는 특정 단계; 및
    상기 특정 단계에 의해 특정되는 복수의 디바이스 드라이버 각각에 대하여 커스터마이즈 동작이 수행된 후에 입력되는 일회의 디바이스 드라이버 커스터마이즈 완료 지시에 응답하여, 상기 특정 단계에서 특정된 상기 복수의 디바이스 드라이버에, 디바이스 드라이버에 대응하는 속성 정보를 설정하는 설정 단계
    를 포함하고,
    상기 설정 단계에서는, 상기 복수의 디바이스 드라이버에 대응하는 속성 정보가 설정되어 있는지 여부가 판정되고,
    상기 설정 단계에서는, 상기 속성 정보가 정보 파일에 기입되는 정보 처리 방법.
  11. 삭제
  12. 제10항에 있어서,
    상기 설정된 속성 정보에 대응하는 데이터에 따라서, 커스터마이즈된 유저 인터페이스 창을 표시부에 표시하는 표시 제어 단계를 더 포함하는 정보 처리 방법.
  13. 제12항에 있어서,
    상기 표시 제어 단계에서는, 상기 설정 단계에서 설정된 속성 정보에 따라서 유저 인터페이스 창의 항목의 유효 표시, 무효 표시, 및 비표시 중 적어도 하나가 제어되는 정보 처리 방법.
  14. 제13항에 있어서,
    상기 표시 제어 단계에서는, 상기 디바이스 드라이버가 기동되는 때에, 상기 디바이스 드라이버에 대응하는 정보 파일을 참조함으로써 취득되는 속성 정보에 따라서 상기 유저 인터페이스 창이 표시되는 정보 처리 방법.
  15. 제10항에 있어서,
    상기 복수의 디바이스 드라이버는, 동일한 디바이스 드라이버 세트에 포함되는 복수의 디바이스 모델에 각각 대응하며,
    상기 설정 단계에서는, 상기 복수의 디바이스 드라이버에 의해 판독될 수 있는 설정 파일에 상기 속성 정보가 기입되는 정보 처리 방법.
  16. 제10항에 있어서,
    상기 특정 단계에서는, 소정의 메모리에 기억된 소정의 데이터로부터 디바이스 드라이버의 리스트 또는 디바이스의 모델이 판독되고,
    상기 특정 단계에서는, 상기 설정 단계에서 상기 속성 정보를 설정하기 위한 디바이스 드라이버가 특정되는 정보 처리 방법.
  17. 제10항에 있어서,
    상기 특정 단계에서는, 상기 설정 단계에서 상기 속성 정보를 설정하기 위한 디바이스 드라이버가 외부 선택 지시에 따라서 특정되는 정보 처리 방법.
  18. 제10항에 있어서,
    상기 디바이스는 프린터인 정보 처리 방법.
  19. 컴퓨터에 로드되고 실행될 때 제10항의 방법을 수행하는 제어 프로그램을 저장하는 컴퓨터 판독가능한 기억 매체.
  20. 복수의 디바이스 드라이버를 인스톨하는데 사용되는 드라이버 정보를 포함하는 인스톨 세트를 작성하도록 구성된 정보 처리 장치로서,
    커스터마이즈되어야 할 복수의 디바이스 드라이버를 특정하는 특정부;
    상기 특정부에 의해 특정되는 상기 복수의 디바이스 드라이버 각각에 대하여 인쇄 설정 데이터를 커스터마이즈 함으로서 속성 정보를 설정하는 설정부; 및
    각각 상기 설정부에 의해 설정된 상기 속성 정보를 가지는 상기 복수의 디바이스 드라이버를 포함하는 인스톨 세트를 생성하는 생성부
    를 포함하는 정보 처리 장치.
  21. 제20항에 있어서,
    상기 특정부는 커스터마이즈 프로그램에 예비적으로 판독되는 드라이버 정보를 사용하여 상기 복수의 디바이스 드라이버를 특정하는 정보 처리 장치.
  22. 제20항에 있어서,
    상기 드라이버 정보는 상기 설정부에 의해 설정된 상기 속성 정보를 갖는 상기 복수의 디바이스 드라이버의 인스톨시에 사용되는 정보 처리 장치.
  23. 복수의 디바이스 드라이버를 인스톨하는데 사용되는 드라이버 정보를 포함하는 인스톨 세트를 작성하도록 구성된 정보 처리 방법으로서,
    커스터마이즈되어야 할 복수의 디바이스 드라이버를 특정하는 특정 단계;
    상기 특정 단계에서 특정된 상기 복수의 디바이스 드라이버 각각에 대하여 인쇄 설정 데이터를 커스터마이즈함으로써 속성 정보를 설정하는 설정 단계; 및
    상기 설정 단계에서 설정된 상기 속성 정보를 각각 갖는 상기 복수의 디바이스 드라이버를 포함하는 인스톨 세트를 생성하는 생성 단계
    를 포함하는 정보 처리 방법.
  24. 제23항에 있어서,
    상기 복수의 디바이스 드라이버 각각은 커스터마이즈 프로그램에 예비적으로 판독되는 드라이버 정보를 사용하여 상기 특정 단계에서 특정되는 정보 처리 방법.
  25. 제23항에 있어서,
    상기 설정 단계에서 설정된 상기 속성 정보를 갖는 상기 복수의 디바이스 드라이버의 인스톨 시에 상기 드라이버 정보가 사용되는 정보 처리 방법.
  26. 복수의 디바이스 드라이버를 인스톨하는데 사용된 드라이버 정보를 포함하는 인스톨 세트를 생성하는 정보 처리 방법을 컴퓨터가 수행하도록 구성되는 제어 프로그램을 저장하는 컴퓨터 판독가능한 기억 매체로서,
    상기 정보 처리 방법은,
    커스터마이즈되어야 할 복수의 디바이스 드라이버를 특정하는 특정 단계;
    상기 특정 단계에서 특정된 상기 복수의 디바이스 드라이버 각각에 대하여 인쇄 설정 데이터를 커스터마이즈함으로써 속성 정보를 설정하는 설정 단계; 및
    상기 설정 단계에 의해 설정된 속성 정보를 각각 갖는 상기 복수의 디바이스 드라이버를 포함하는 인스톨 세트를 생성하는 생성 단계
    를 포함하는 컴퓨터 판독가능한 기억 매체.
KR1020060028060A 2005-03-29 2006-03-28 정보 처리 장치, 정보 처리 방법, 및 기억 매체 KR100838871B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005095697 2005-03-29
JPJP-P-2005-00095697 2005-03-29

Publications (2)

Publication Number Publication Date
KR20060105501A KR20060105501A (ko) 2006-10-11
KR100838871B1 true KR100838871B1 (ko) 2008-06-16

Family

ID=36613502

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060028060A KR100838871B1 (ko) 2005-03-29 2006-03-28 정보 처리 장치, 정보 처리 방법, 및 기억 매체

Country Status (4)

Country Link
US (1) US8239883B2 (ko)
EP (1) EP1710680B1 (ko)
KR (1) KR100838871B1 (ko)
CN (1) CN100472425C (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160057827A (ko) * 2014-11-14 2016-05-24 한국수력원자력 주식회사 절차흐름 가독성 향상을 위한 보이기/감추기 방법 및 이를 이용하는 장치

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4344921B2 (ja) * 2003-08-11 2009-10-14 セイコーエプソン株式会社 Ui制御装置、ui制御方法、ui制御プログラム、印刷制御装置、印刷制御方法および印刷制御プログラム
US7757010B2 (en) * 2006-04-28 2010-07-13 Mediatek Inc. Systems and methods for managing mass storage devices in electronic devices
JP4725559B2 (ja) * 2007-08-03 2011-07-13 ブラザー工業株式会社 情報処理装置、及びインストール用プログラム
US20090051960A1 (en) * 2007-08-23 2009-02-26 Maglanque Jose Elwin System and method for creating a customizable device driver for interfacing with a document processing device
JP5021531B2 (ja) * 2008-03-14 2012-09-12 株式会社リコー 画面表示システム、情報処理装置、画面表示方法、画面表示プログラム及び記録媒体
KR20090124718A (ko) * 2008-05-30 2009-12-03 삼성전자주식회사 유니버셜 프린터 드라이버를 이용한 화상형성방법 및 이를수행하는 장치
JP4753321B2 (ja) * 2008-10-06 2011-08-24 キヤノンマーケティングジャパン株式会社 情報処理装置及びインストーラセット作成方法、プログラム、記憶媒体、並びに印刷システム
CN101750928B (zh) * 2008-11-28 2012-10-17 京瓷办公信息系统株式会社 显示控制装置、图像形成装置及显示控制方法
JP4978629B2 (ja) * 2009-01-19 2012-07-18 コニカミノルタビジネステクノロジーズ株式会社 項目設定装置、並びにその制御方法及び制御プログラム
JP5293251B2 (ja) 2009-02-17 2013-09-18 株式会社リコー 情報処理装置、生成システム、画像形成装置、生成方法およびプログラム
JP5527992B2 (ja) * 2009-03-30 2014-06-25 キヤノン株式会社 印刷制御方法、印刷制御装置、及びコンピュータプログラム
TW201039131A (en) * 2009-04-24 2010-11-01 Silicon Motion Inc Apparatus for controlling at least one electronic device and related method thereof
JP5478937B2 (ja) 2009-05-19 2014-04-23 キヤノン株式会社 情報処理装置、制御方法、プログラム
JP5882623B2 (ja) * 2011-08-03 2016-03-09 キヤノン株式会社 情報処理装置、制御方法、プログラム
JP5924892B2 (ja) * 2011-09-08 2016-05-25 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
JP5915278B2 (ja) 2012-03-13 2016-05-11 株式会社リコー プログラム、情報処理装置、記憶媒体
US20150169334A1 (en) * 2012-07-19 2015-06-18 Nec Corporation Method for customizing device initial settings in information processing system
JP6661409B2 (ja) * 2016-03-01 2020-03-11 キヤノン株式会社 自動設置システム、情報処理装置、情報処理装置の制御方法、及びプログラム
JP2019003491A (ja) * 2017-06-16 2019-01-10 富士ゼロックス株式会社 情報処理装置及びプログラム
JP2021124736A (ja) * 2020-01-31 2021-08-30 ブラザー工業株式会社 印刷データ編集装置、印刷データ作成プログラム、及び印刷システム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003024772A (ja) * 2001-07-13 2003-01-28 Canon Inc プラズマ処理装置およびプラズマ処理方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08278871A (ja) 1995-04-05 1996-10-22 Canon Inc 情報処理装置及び方法
US6825941B1 (en) * 1998-09-21 2004-11-30 Microsoft Corporation Modular and extensible printer device driver and text based method for characterizing printer devices for use therewith
US6449050B1 (en) * 1998-10-05 2002-09-10 Canon Kabushiki Kaisha Code generator for printer driver
JP2001022497A (ja) * 1999-07-07 2001-01-26 Minolta Co Ltd デバイスドライバー
US20020067504A1 (en) * 2000-12-06 2002-06-06 Xerox Corporation Method and apparatus for automatic upgrade of a product's printer driver
JP5055492B2 (ja) 2001-05-07 2012-10-24 サイエンスパーク株式会社 電子計算機のインターフェースドライバプログラム及びその記録媒体
JP3639821B2 (ja) * 2001-09-14 2005-04-20 キヤノン株式会社 印刷制御方法及び印刷制御装置及び情報処理装置が実行可能な印刷制御プログラム並びにコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP3871035B2 (ja) 2002-01-11 2007-01-24 セイコーエプソン株式会社 インストール制御プログラムを記録した媒体、インストール制御装置、インストール制御方法、インストールシステムおよびインストール用データを記録した媒体
US20030184782A1 (en) * 2002-03-27 2003-10-02 Perkins Gregory E. Printer driver configured to dynamically receive printer self-description
JP2004152090A (ja) 2002-10-31 2004-05-27 Ricoh Co Ltd 印刷システムおよびプログラムを記録したパソコン読取可能な記録媒体
US7853946B2 (en) * 2003-02-28 2010-12-14 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and control program
US20050039193A1 (en) * 2003-03-20 2005-02-17 Samsung Electronics Co., Ltd. Method and apparatus for generating device driver and user interface screen

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003024772A (ja) * 2001-07-13 2003-01-28 Canon Inc プラズマ処理装置およびプラズマ処理方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
공개특허 제2003-24772호

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160057827A (ko) * 2014-11-14 2016-05-24 한국수력원자력 주식회사 절차흐름 가독성 향상을 위한 보이기/감추기 방법 및 이를 이용하는 장치
KR101682025B1 (ko) * 2014-11-14 2016-12-02 한국수력원자력 주식회사 절차흐름 가독성 향상을 위한 보이기/감추기 방법 및 이를 이용하는 장치

Also Published As

Publication number Publication date
EP1710680A2 (en) 2006-10-11
US20060224780A1 (en) 2006-10-05
EP1710680B1 (en) 2017-05-10
US8239883B2 (en) 2012-08-07
EP1710680A3 (en) 2010-12-08
KR20060105501A (ko) 2006-10-11
CN1841298A (zh) 2006-10-04
CN100472425C (zh) 2009-03-25

Similar Documents

Publication Publication Date Title
KR100838871B1 (ko) 정보 처리 장치, 정보 처리 방법, 및 기억 매체
US8498002B2 (en) Information processing apparatus capable of customizing device driver, information processing method, and control program
US11042336B2 (en) Information processing apparatus and method
US8451463B2 (en) Information processing apparatus and information processing method
JP4863450B2 (ja) デバイスドライバプログラムをカスタマイズするための情報処理装置及びデバイスドライバプログラムのカスタマイズ方法
JP4812093B2 (ja) 情報処理装置、情報処理装置の制御方法、情報処理方法、プログラムおよび記憶媒体
JP4546305B2 (ja) デバイスドライバのカスタマイズ用プログラム、情報処理装置および情報処理方法
JP2001318779A (ja) 印刷制御方法及び装置と記憶媒体並びに印刷システム
US20090109473A1 (en) Information processing device, information processing method, and computer-readable storage medium
KR20110088521A (ko) 프로그램 스크립팅 언어를 이용하는 라벨 프린터 api
JP4702948B2 (ja) デバイスドライバをカスタマイズする情報処理装置、方法、記憶媒体
JP2002251268A (ja) 情報処理装置および該装置のデータ処理方法およびデータ処理プログラムおよび該プログラムを格納した記憶媒体
JP2005159764A (ja) 記録方法及び装置及びプログラム及び記憶媒体
JP2011008469A (ja) 情報処理装置、情報処理方法、プログラム、及び記憶媒体
JP2009146362A (ja) 情報処理装置、情報処理方法、プログラム、及び記憶媒体

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130528

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140527

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150527

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160525

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170526

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20180525

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190607

Year of fee payment: 12