(58)【調査した分野】(Int.Cl.,DB名)
前記カスタマイズデータは、前記カスタマイズ設定の内容を示すデータおよびプリンタードライバーのインストール情報を示すデータを含むことを特徴とする請求項1に記載のシステム。
【発明を実施するための形態】
【0011】
以下、本発明を実施するための形態について図面を用いて説明する。
【0012】
[システム構成]
図1は、本発明の実施形態に係る一般的な情報処理装置であるコンピューター及び印刷システムの構成を示すブロック構成図である。なお、本発明に特有の機能が実行されるのであれば、単体もしくは複数の機器のいずれの構成であってもよい。また、各サービスがネットワークを介して接続され、サービス間で連携して処理するシステムであってもよい。
【0013】
本実施形態に係る印刷処理システムは、コンピューター3000と、印刷を行う画像形成装置であるプリンター1500とを備えている。プリンター1500は、コンピューター3000から印刷データを受信して印刷を行う。
【0014】
コンピューター3000において、CPU1はRAM2に記憶されているプログラムに従って、システムバス4に接続される各デバイスを総括的に制御している。RAM2は、CPU1の主メモリ、ワークエリア等としても機能している。ROM3は、各種プログラム及びデータを格納しており、各種フォントを記憶するフォントROM3a、ブートプログラムやBIOS等を記憶するプログラムROM3b、及び各種データを記憶するデータROM3cを含む。
【0015】
キーボードコントローラー(KBC)5は、キーボード(KB)9や不図示のポインティングデバイス(マウス)からのキー入力を制御する。CRTコントローラー(CRTC)6は、CRTディスプレイ(CRT)10への表示を制御している。ディスクコントローラー(DKC)7は、ハードディスクなどの外部メモリ11へのアクセスを制御している。プリンターコントローラー(PRTC)8は、双方向性インタフェース21を介してプリンター1500に接続され、プリンター1500との間で通信制御処理を行う。
【0016】
外部メモリ11は、例えばハードディスク(HD)やMO、あるいはフロッピー(登録商標)ディスク(FD)等である。外部メモリ11は、オペレーティングシステムプログラム(以下、OS)205をはじめ各種アプリケーション(例えば、図形、イメージ、文字、表等が混在した文書処理を行う文書処理アプリケーションプログラム)201を記憶している。また、外部メモリ11は、印刷処理関連プログラム204の他に、ユーザーファイル、編集ファイル等も記憶している。印刷処理関連プログラム204は、ページ記述言語を用いて記述される印刷データを生成するプログラムであって、同系列の複数のプリンターに対して共通に利用される。また、印刷処理関連プログラム204は、プリンター制御コマンド生成モジュール(以下、プリンタードライバー)2041、プリンタードライバーユーザーインタフェース(UI)制御モジュール2042を含んでいる。
【0017】
外部メモリ11に記憶された、本実施形態に係るカスタマイズツールプログラムを含むアプリケーション201は、RAM2にロードされてCPU1により実行される。またCPU1は、例えばRAM2へのアウトラインフォントの展開(ラスタライズ)処理を実行し、CRT10上でのWYSIWYG(What You See Is What You Get)を可能としている。なお、本実施形態に係るカスタマイズツールプログラムは、プリンタードライバーに係る各種設定をユーザーがカスタマイズする際に用いられるプログラムである。カスタマイズツールに関しての詳細は、後述する。
【0018】
更に、CPU1は、CRT10上のマウスカーソル(不図示)等で指示されたコマンドに基づいて、登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザーは印刷を実行する際、印刷設定画面(プリンタードライバーUI制御モジュール2042により制御される)を開き、プリンターの設定や、印刷モードの選択を含むプリンタードライバー2041に対する印刷処理の設定を行うことが出来る。
【0019】
次にプリンター1500の構成について説明する。CPU12は、プリンター1500の全体の動作を制御している。RAM19はCPU12の主メモリ、ワークエリア等として機能するとともに、出力情報展開領域、環境データ格納領域としても用いられる。また、RAM19はNVRAM(Non−volatile RAM:不揮発RAM)領域も備えており、増設ポート(不図示)に接続されるオプションRAMによりメモリ容量を拡張することが出来る。ROM13は、各種フォントを記憶するフォントROM13a、CPU12により実行される制御プログラム等を記憶するプログラムROM13b、各種データを記憶するデータROM13cを備えている。
【0020】
入力部18は、コンピューター3000との間でデータの送受信を行う。印刷部インタフェース16は、プリンターエンジンである印刷部17とのインタフェースを制御している。
【0021】
外部メモリ14は、メモリコントローラ−(MC)20によりアクセスが制御されており、オプションとして接続されるハードディスク(HD)、MO、フロッピー(登録商標)ディスク(FD)、ICカード等を含んでいる。また、外部メモリ14は、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。尚、ハードディスク等の外部メモリ14がプリンター1500に接続されていない場合には、ROM13のデータROM13cに、コンピューター3000で利用される情報等を記憶する。尚、外部メモリ14は1個に限らず複数備えるものであってもよく、例えば、内蔵フォントに加えてオプションフォントカード、言語系の異なるプリンター制御言語を解釈するプログラム等を格納した外部メモリ14を複数接続できるように構成されていてもよい。
【0022】
操作部22には、ユーザーによる操作を受け付ける操作パネルが設けられ、その操作パネルには操作のためのスイッチ及びLED表示器(不図示)等が配されている。また、NVRAM(不図示)を有し、操作パネルからのプリンターモード設定情報を記憶するようにしてもよい。
【0023】
CPU12は、ROM13のプログラムROM13bに記憶された制御プログラム等に基づき、印刷部インタフェース16を介して印刷部17(プリンターエンジン)に出力情報としての画像信号を出力する。またCPU12は、入力部18を介してコンピューター3000との通信処理が可能となっており、コンピューター3000から送信される印刷データを受信すると共に、プリンター1500内の情報等をコンピューター3000に通知可能に構成されている。
【0024】
[メモリマップ]
図2は、所定のアプリケーション及び印刷処理関連プログラム204を起動して、コンピューター3000のRAM2にプログラムやデータがロードされた状態でのRAM2のメモリマップを示す図である。
【0025】
RAM2には、
図2に示すように、BIOS206、OS205をはじめ、アプリケーション201、印刷処理関連プログラム204、及び関連データ203がロードされている。更に空きメモリ領域202も確保されている。これにより、アプリケーション201及び印刷処理関連プログラム204がCPU1により実行可能な状態となる。尚、印刷処理関連プログラム204に含まれるプリンタードライバーUI制御モジュール2042は、ユーザーによる印刷設定指令に応じてCRT10に印刷設定画面を表示し、KB9などを介したユーザーからの入力設定を受け付ける。
【0026】
[ネットワーク構成]
図3は、本実施形態に係るネットワークの環境を簡略した図である。印刷を行う文書や画像を作成するクライアントとしてのコンピューター3000がネットワーク5000に接続されている。なお、
図3ではコンピューターは1つのみが示されているが、複数のコンピューターが接続されていてもよい。また、ネットワーク5000に接続されたクライアントのユーザーやプリンターを管理する管理サーバー(不図示)が接続されていてもよい。また、
図3では不図示であるが、1または複数のプリンターがネットワーク5000に接続されているものとする。ネットワークにはPAN(Personal Area Network)、LAN(Local Area Network)、MAN(Metropolitan Area Network)、WAN(WIDe Area Network)などの形態がある。また、
図3では、各機器がネットワーク5000を介して接続されているが、例えばクラウドなどのように、サーバーやプリンターがインターネットを越えて接続されてサービスが提供されるような構成であってもよい。
【0027】
本実施形態として、プリンタードライバーのカスタマイズシステムの構成について、
図3を用いて説明する。
図3において、ネットワーク5000に接続されたサーバー4000上では、本願発明に係るシステムを実現するためのプログラムが動作する。
【0028】
このプログラムによりサーバー4000上で、通信部4001、検出部4002、判定部4003、プリンタードライバーDB4004、カスタマイズドライバー生成部4005、およびCAT生成部4006を実現している。通信部4001は、ネットワーク5000を介して通信を行う。検出部4002は、ファイルの検出を行う。判定部4003は、CATファイルの判定を行う。プリンタードライバーDB4004は、過去にリリースされたプリンタードライバーを保持する。つまり、プリンタードライバーDB4004は、コンピューター3000にインストールされているプリンタードライバーの情報を保持しているものとする。カスタマイズドライバー生成部4005は、カスタマイズされたプリンタードライバーを生成する。なお、本明細書において、カスタマイズ前のプリンタードライバーを単に“プリンタードライバー”と記載し、カスタマイズがされたプリンタードライバーを“カスタマイズドライバー”と記載する。CAT生成部4006は、CATファイル(カタログファイル)を生成する。各部のより詳細な動作については、処理フローと併せて後述する。
【0029】
[カスタマイズツール]
コンピューター3000上で動作するカスタマイズツールプログラムのUIの一例を
図4に示す。なお、本実施形態においてOS205をMicrosoft(登録商標)社が提供するWindows(登録商標) OSとして説明する。また、カスタマイズツールプログラムは、Windows(登録商標) OS上で動作するものとする。
【0030】
なお、カスタマイズツールプログラムにおいて、プリンタードライバーを実際にインストールすることなく、疑似API(Application Program Interface)により、OSに対応するAPIの動作をシミュレートすることができる。また、個別の関数を動作させるための引数の設定を変更、追加等することによりプリンタードライバーの動作内容を制御することができる。カスタマイズツールのUI画面により、ユーザーから各種設定の指定を受け付ける受付手段を実現する。
【0031】
図4のUI画面上において、ユーザーがメニュー301の“開く”を指定すると、カスタマイズを行うプリンタードライバーのファイルセットを格納するフォルダーを指示するためのダイアログ(不図示)が表示される。このダイアログにより、ユーザーはカスタマイズを行うプリンタードライバーの格納先を指示することができる。指示されたフォルダーは、表示欄302に表示され、指示されたプリンタードライバーのファイルセットの対応OSが表示欄303に表示される。ここでは「Windows」と表示される。
【0032】
一つのプリンタードライバーのファイルセットのフォルダーに、プリンターの機種に対応したプリンタードライバーが複数個格納されている場合には、カスタマイズドライバー作成時に複数個のプリンタードライバーが、リストビュー305にてリスト化される。
【0033】
カスタマイズツールは、リストビュー305にてリスト化された各プリンタードライバーにカスタマイズ用の情報(カスタマイズデータ)が設定されているか判定する。カスタマイズデータが設定されているプリンタードライバーがある場合には、それに対応するカスタマイズドライバーを作成する。これは、擬似APIを用いることにより、カスタマイズしたいプリンタードライバーをOSに対してインストールさせることなく、ドライバーをカスタマイズすることができる。
【0034】
リストビュー305には、カスタマイズを行うプリンタードライバーの対応機種と、カスタマイズを行った情報に対する識別表示が表示される。チェックボックス310をチェックすると、ボタン311が有効となる。ボタン311を押下すると、カスタマイズ用のプリンタードライバーUI(
図5)を表示する。
図5に示すカスタマイズ用のプリンタードライバーUIによりユーザーは、印刷設定(ドキュメントプロパティ)の初期値設定、デバイスの設定(プリンタープロパティ)などの初期設定の指定を行うことができる。
【0035】
チェックボックス320にチェックを入れると、設定ボタン321が有効となる。設定ボタン321を押下すると、プリンタードライバーUI上のコントロールの表示方法をカスタマイズするためのUI(
図6)を表示する。
図6に示すUIによりユーザーは、カスタマイズ用のプリンタードライバーUI上におけるコントロールの表示方法を設定することができる。
【0036】
設定解除ボタン322が押下されると、
図5または
図6のUI画面から設定したカスタマイズに関する設定の解除を行う。そして、リストビュー305に表示される識別表示を解除し、プリンタードライバーのファイルセットのロード直後の状態に戻すことができる。
【0037】
図4のUI画面において、適用ボタン323が押下されると、
図5または
図6のUI画面から設定したカスタマイズに関する設定がアプリケーションプログラム(カスタマイズツール)内にカスタマイズ情報(カスタマイズデータ)として保持される。
【0038】
カスタマイズツールは、例えば、INFファイルといったドライバーのインストール情報を記述するファイルや、UPDファイルといったドライバーのデータ情報を保持するファイルにカスタマイズ情報を保持する。本実施形態では、INFファイルとUPDファイルを用いて説明を行う。
【0039】
参照ボタン330を押下することで、カスタマイズドライバーの作成先を指定するためのダイアログ(不図示)を表示し、カスタマイズドライバーの作成先を指定することができる。各種設定を行った後で、作成ボタン340が押下されると、ユーザーにより指定された設定に従ってカスタマイズされたプリンタードライバーが作成される。
【0040】
図5は、
図4のUIのボタン311が押下された際に表示されるカスタマイズ用のプリンタードライバーUIの画面構成例を示す。
【0041】
カスタマイズツールは、CPU1の制御下でコンピューター3000の設定部として機能し、かかる設定部は、例えば、
図5に示すUI画面の様な文書のプロパティ設定と、デバイスのプロパティ設定を行うための設定画面をCRT10上に表示する。
【0042】
図5のUI画面は、Windows(登録商標)に登録されているプリンタードライバーとは異なり、文書用の設定を行うドキュメントプロパティUIと、デバイスの設定を行うプリンタープロパティのUIを一つのUI画面上に表示する。これは、カスタマイズ用のUIは、カスタマイズツールがプリンタードライバーのモジュールを利用して表示を行う。
【0043】
図5に示すUIではドキュメントプロパティのUIとして、ページ設定401、仕上げ402、給紙403、印刷品質404のUIが表示可能である。また、プリンタープロパティのUIとして、デバイスの設定405が表示可能である。これらの各UIを介して、ドキュメントプロパティの初期値設定と、プリンタープロパティの初期値設定を行うことができる。また、カスタマイズ対象でない設定に関して、ボタン410のようにグレイアウト表示となり、ユーザーによる設定の入力を受け付けないように構成される。
【0044】
図6は、プリンタードライバーが提供するUIにおける設定項目に対し、表示/非表示コントロールを設定するUIの一例を示す図である。これは、
図4の設定ボタン321を押下することで、コンピューター3000のCRT10上に表示される。
図6に示す例では、ページ設定501、仕上げ502、給紙503、および印刷品質504は、デバイスの設定505に対してコントロールの設定を行うことができる。
【0045】
これらのコントロールの設定はそれぞれ、
図5で設定可能となっているUI(401〜405)に対応する各項目の表示制御の設定を行うことができる。また、表示/非表示の他、表示する場合に有効/無効のいずれかの設定を行うこともできる。共通506は、これらの表示制御に共通の設定項目に対して、表示制御の設定を行うことが可能である。なお、
図5および
図6の設定画面および設定項目はこれに限定するものではなく、
図5にて設定できる項目に対し、
図6にてコントロールの表示/非表示が設定できるように対応付けられていれば別の項目を追加しても構わない。
【0046】
[動作フロー]
カスタマイズツールの基本動作について、
図7を用いて説明する。なお、基本動作の実行においては、コンピューター3000におけるCPU1により実行されるカスタマイズツールが動作の主体となる。
【0047】
まず、ユーザーがカスタマイズツールを起動すると、カスタマイズツールは初期化処理を行い、
図4に示すUI画面をCRT10上に表示する(S701)。そして、カスタマイズツールは、ユーザー指定から、プリンタードライバーのファイルセットの格納位置を取得する(S702)。
【0048】
カスタマイズツールは、プリンタードライバーのファイルセットから、インストール情報が記述されるINFファイルの記述内容をチェックする(S703)。その後、カスタマイズツールは、チェックした記述内容から、自身に対応したプリンタードライバーのファイルセットであるか否かを判定する(S704)。カスタマイズツールに対応していない場合(S704にてNO)、S709にてカスタマイズツールはエラー処理を行い、S702に戻る。そして、カスタマイズツールは、ユーザーからのプリンタードライバーのファイルセットの入力があるまで待機する。
【0049】
カスタマイズツールに対応している場合(S704にてYES)、カスタマイズツールは、
図5、
図6のプリンタードライバーのUI画面を表示させ、ユーザーからのカスタマイズ設定を受け付ける(S705)。
【0050】
ここで、
図4〜
図6で入力される設定がカスタマイズデータ、すなわち、カスタマイズドライバーのファイルセットに含まれるデータとなる。カスタマイズデータは、プリンタードライバーが読み出し可能なデータファイル(例えば、GPD(Generic Printer Description)ファイル)に設定される。
【0051】
プリンタードライバーは、インストールされて動作可能な状態になると、データファイル内の設定値を読み込む。つまり、カスタマイズされた値をデータファイルに反映させることで、ドライバーはカスタマイズ後の設定値を利用することが可能となる。例えば、よく使う設定値のプリセットをプリンタードライバーに予め反映させておくと、カスタマイズドライバーをインストールするだけで、よく使う設定値がプリンタードライバーに設定された状態となる。
【0052】
カスタマイズツールは、
図4の作成ボタン340を介してユーザーからカスタマイズドライバーの作成指示を受ける(S706)。カスタマイズツールは、作成指示に従って、プリンタードライバーのデータファイルおよびINFファイルを生成し、カスタマイズドライバーの作成処理を行う(S707)。その後、カスタマイズツールは、ユーザーからカスタマイズツールの終了指示を受けると(S708)、動作を終了する。
【0053】
(実施形態1)
本願発明に係る実施形態の一つとして、カスタマイズドライバーに電子署名が付与されたCATファイルを付与するシステムについて、
図8および
図9のフローチャートを用いて説明する。本フローチャートは、
図7のS707の処理に対応する。なお、
図8のフローチャートは、コンピューター3000側の処理を示しており、
図9のフローチャートは、サーバー4000側の処理を示している。
【0054】
S801にて、カスタマイズツールは、ユーザーから指定された設定値に基づいて、データファイルの生成処理を行う。カスタマイズツールは、INFファイルの生成を行う(S802)。カスタマイズツールは、カスタマイズ前のプリンタードライバーのファイルセットに含まれるCATファイルを取得し、作成したデータファイルおよびINFファイルと共に、サーバー4000へ送信する(S803)。ここで送信するCATファイルは、カスタマイズ前のプリンタードライバーに対応するCATファイルである。なお、本明細書では便宜上、第一のカタログファイルとも記載する。
【0055】
カスタマイズツールは、サーバー4000からのレスポンスを受信するまで待機する(S804)。レスポンスとしてファイル生成完了通知を受信した後(S804にてYES)、カスタマイズツールは、サーバー4000で生成されたCATファイルを受信する(S805)。ここでファイル送信の応答として受信するCATファイルはカスタマイズ後のカスタマイズドライバーに対応するCATファイルであり、電子署名が付与されている。なお、本明細書では、便宜上、第二のカタログファイルとも記載する。なお、サーバー4000からエラー通知を受信した場合には、カスタマイズツールはUI画面にてその旨を表示する。
【0056】
カスタマイズツールは、カスタマイズドライバーを生成する(S806)。ここではカスタマイズ前のプリンタードライバーのファイルセットに対し、S801で生成したデータファイル、S802で生成したINFファイル、及びサーバー4000から受信したCATファイルを差し替えて適用することでカスタマイズドライバーを生成する。そして、カスタマイズツールは、ユーザーからの終了指示を受けつけ(S807)、本フローチャートを終了する。
【0057】
次に、サーバー4000の処理について、
図9のフローチャートを用いて説明する。
図9のフローチャートは、
図8のS803においてコンピューター3000の通信部4001から送信されたINFファイル、データファイル、CATファイルを受信することにより開始される。また、本処理フローは、
図3に示すサーバー4000の各部位がCPUによって制御されることにより実現される。
【0058】
検出部4002は、通信部4001が受信したファイルから、CATファイルを検出し(S901)、CATファイルを判定部4003へ渡す。ここで受信するCATファイルは、上述したように、カスタマイズ前のプリンタードライバーに対応するCATファイルである。判定部4003は、CATファイルからプロパティ情報や、内部に含まれるハッシュ値などの、カスタマイズ前のプリンタードライバーを特定する情報を取得する。そして、判定部4003は、取得した情報をもとに、プリンタードライバーDB4004から、該当するプリンタードライバーを検出する(S902)。
【0059】
カスタマイズ前のプリンタードライバーを検出できない場合(S902にてNO)、判定部4003は、エラー処理を行う(S903)。その後、通信部4001がエラーをコンピューター3000へ返答し、本処理フローを終了する。
【0060】
カスタマイズ前のプリンタードライバーを検出した場合(S902にてYES)、カスタマイズドライバー生成部4005は、カスタマイズドライバーを生成する(S904)。ここでは、検出したプリンタードライバーのファイルセットに対し、コンピューター3000から受信したデータファイル及びINFファイルを差し替えることでカスタマイズドライバーを生成する。CAT生成部4006は、生成されたカスタマイズドライバーに対応するCATファイルを生成し、電子署名を付与する(S905)。なお、CATファイルに対応する電子署名の付与方法については、ここでは特に限定しない。そして、通信部4001は、コンピューター3000に対して、生成したCATファイルを送付する(S906)。その後、本処理フローを終了する。
【0061】
本願発明により、クライアント側のカスタマイズツールに秘密鍵等の認証情報を持たせることなく、電子署名の付与されたCATファイルを含んだカスタマイズドライバーのファイルセットを生成することが可能となる。
【0062】
また、コンピューターがサーバーに送信するファイルをドライバーのファイルセットではなく、一部のデータ(ここではデータファイル、INFファイル、およびCATファイル)に限定することで、ネットワークの負荷を低減することが可能となる。また、サーバーがコンピューターに送信するデータもCATファイルに限定することでネットワークの負荷を低減している。
【0063】
さらに、サーバーがデータベースを検索する際に、CATファイルをキーとすることにより、唯一性を保ち間違いを防ぐことが可能となる。
【0064】
(実施形態2)
本願発明に係る別の実施形態について、
図8、
図10、および
図11を用いて説明する。本実施形態では、ユーザーによるカスタマイズツールの操作履歴に基づいて、サーバー側でカスタマイズドライバーを作成し、電子署名が付与されたCATファイルを発行する。なお、
図8、
図10のフローチャートは、コンピューター3000側の処理を示しており、
図11のフローチャートは、サーバー4000側の処理を示している。
【0065】
本実施形態では、
図7のS704において、カスタマイズツールが、カスタマイズに対応したプリンタードライバーをロードすることにより開始される。
【0066】
カスタマイズに対応したドライバーをロードすると、カスタマイズツールは、カスタマイズツール内の記録モジュール(不図示)の初期化処理を行う(S1001)。カスタマイズツールは、記録モジュールのデータ領域を確保する(S1002)。
【0067】
ユーザーによってカスタマイズ設定が開始されると(S705)、カスタマイズツールは、ボタン操作・リストボックスからの選択肢・入力文字列といったユーザーが
図4〜6に示すUIを操作した内容を検出し、それぞれ記録モジュールへ渡す(S1003)。記録モジュールは、操作した内容を逐一データ領域に保持していく。
【0068】
ユーザーのカスタマイズ設定の途中で、設定解除ボタン322が押下され、それまでの設定がクリアされた場合には(S1004にてYES)、カスタマイズツールは、S1001に戻って記録モジュールの初期化を行う。
【0069】
設定のクリアが行われず、カスタマイズ設定が完了した場合(S1005にてYES)、カスタマイズツールは、データ領域に保持していたUIを操作した内容を、操作ファイルとして出力する(S1006)。ここでカスタマイズ設定が完了したか否かは、
図4の作成ボタン340が指定されたか否かにて判断できる。
【0070】
そして、カスタマイズドライバーの作成指示が行われた後、カスタマイズツールはデータファイル及びINFファイルの生成を行う(S1007、S1008)。そして、カスタマイズツールは、カスタマイズ前のプリンタードライバーのファイルセットに含まれるCATファイルを取得し、サーバー4000にCATファイルおよび操作ファイルを送信する(S1009)。このとき、S1007およびS1008にて生成したデータファイルおよびINFファイルは送信されない。
【0071】
カスタマイズツールは、サーバー4000からのレスポンスを受信するまで待機する(S1010)。レスポンスとしてファイル生成完了通知を受信した後(S1010にてYES)、カスタマイズツールは、サーバー4000で生成されたCATファイルを受信する(S1011)。ここで受信されるCATファイルは、カスタマイズドライバーに対応する、電子署名が付与されたCATファイル(第二のカタログファイル)である。なお、サーバー4000からエラー通知を受信した場合には、カスタマイズツールはその旨をUI画面にて表示する。
【0072】
そして、カスタマイズツールは、カスタマイズドライバーを生成する(S1012)。ここでは、カスタマイズ前のプリンタードライバーのファイルセットに対し、S1007にて生成したデータファイル、S1008にてINFファイル、及びサーバー4000から受信したCATファイルを差し替えることでカスタマイズドライバーを生成する。
【0073】
その後、カスタマイズツールは、ユーザーからの終了指示を受けつけると本フローチャートを終了する。
【0074】
次に、サーバー4000の処理について、
図11を用いて説明する。
図11のフローチャートは、実施形態1にて示した
図9のフローチャートと同様に、サーバー4000の通信部4001がコンピューター3000からファイルを受信することにより開始される。S1101〜S1103の処理は、
図9のS901〜S903と同様であるため、ここでの説明は省略する。
【0075】
カスタマイズドライバー生成部4005は、コンピューター3000から受信した操作ファイルを読み込む(S1104)。そして、操作ファイルに記述されている手順に従い、カスタマイズ情報を含んだデータファイル及びカスタマイズされたINFファイルを生成する。そして、生成したデータファイル、INFファイル、コンピューター3000から受信したCATファイルを用いてカスタマイズドライバーを生成する(S1105)。以降の処理については、実施形態1の
図9にて示したS905、S906と同様であるため、ここでの説明は省略する。
【0076】
本実施形態により、サーバー側で操作履歴を受信してデータファイルおよびINFファイルを生成することにより、サーバー側で生成されるCATファイルの信頼性を高めることが可能となる。
【0077】
(実施形態3)
上記の実施形態では、クライアント側にて提供されるカスタマイズツールで、プリンタードライバーのカスタマイズを行う例を示した。本願発明に係る別の実施形態として、サーバー側でカスタマイズする機能を提供し、Webブラウザを介してユーザーが当該機能を利用する例について、
図12を用いて説明する。
【0078】
図12は、Webブラウザに表示されるソフトウェアダウンロードサイトのUI画面の構成例を示す。ユーザーは、UI画面1200において、まず、ソフトウェアのカテゴリ1201を選択する。そして、ダウンロード対象の情報として、機種1202、OS1203、およびソフトウェア1204を選択する。
図12は、ソフトウェア1204に、プリンタードライバーを選択した後のUI画面の表示であり、更にカスタマイズドライバーを選択した後のUI表示(カスタマイズ1206)である。UI画面1200上でカスタマイズ1206を選択することにより、ユーザーは提供されている既存のプリンタードライバーをカスタマイズすることが可能となる。UI画面1200の表示において、ユーザーは編集領域1207にカスタマイズする内容を設定し、「次へ」のリンク1208を選択すると、ユーザーが指定したソフトウェア(ここでは、カスタマイズドライバー)のダウンロードが開始される。
【0079】
[処理フロー]
次に、サーバー4000側の内部処理について、
図13を用いて説明する。
図13の処理フローは、ユーザーが、サーバー4000が提供するソフトウェアダウンロードサイトにアクセスすることにより開始される。
【0080】
まず、サーバー4000は、ダウンロードするソフトウェアの対象モデル、インストールする対象OSといった使用環境の入力をUI画面1200を介して受け付ける(S1301)。サーバー4000は、プリンタードライバーのダウンロードにおいて、カスタマイズが必要か否かを受け付ける(S1302)。ここでのカスタマイズの有無については、
図12のカスタマイズ1206が選択されたか否かに基づいて判定される。カスタマイズの必要が無ければ(S1302にてNO)、S1309にてサーバー4000は、電子署名が付与された標準のプリンタードライバーのダウンロードサイトを表示する(S1309)。その後、本処理フローは終了する。
【0081】
カスタマイズの必要がある場合は(S1302にてYES)、S1303にてサーバー4000はカスタマイズ設定用のUIを表示する。本実施形態ではUI画面1200にて編集領域1207が表示される。そして、ユーザーからのカスタマイズ設定の入力を受け付けた後、サーバー4000は、S1301の指定に適合するプリンタードライバーをプリンタードライバーDB4004から読み出す(S1304)。
【0082】
サーバー4000はカスタマイズ処理部(不図示)にて、S1303にて設定されたカスタマイズ内容を読み込み)、カスタマイズされたINFファイル及びデータファイルを生成する(S1305)。そして、サーバー4000は生成した各種ファイルを用いて、カスタマイズドライバーを生成する(S1306)。
【0083】
サーバーは、生成したカスタマイズドライバーに対応するCATファイルを生成し、電子署名を付与する(S1307)。サーバー4000は、CATファイルおよび電子署名を含むカスタマイズドライバーのファイルセットを、ダウンロードサイトからダウンロードできる状態にし、当該ダウンロードサイトを表示する(S1308)。そして、本処理フローは終了する。
【0084】
このように、サーバー側でカスタマイズの処理を行うことで、カスタマイズドライバーの生成に係る負荷を低減させつつ、信頼性を高められたカスタマイズドライバーを取得することが可能となる。
【0085】
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。