(57)【要約】【課題】機器の使用環境に依存せずに、機器を制御する制御プログラムの導入に伴うコストを抑える。【解決手段】制御プログラムを管理する複数のＤＤＳサーバそれぞれに対して、制御プログラムの検索を行って当該制御プログラムの格納先を示す格納先情報を含む制御プログラム情報を生成する検索部２５３と、生成された複数の制御プログラム情報を記憶する制御プログラム情報記憶部２４３と、複数の機器それぞれ毎に、当該機器の制御元のコンピュータへの制御プログラムの導入時の設定に関する設定情報を記憶する設定情報記憶部２４１と、作成要求に基づく制御プログラム情報を取得し、取得した制御プログラム情報に含まれる格納先情報に基づいて、ＤＤＳサーバから制御プログラムを取得する取得部２５７と、作成要求に基づく設定情報を取得し、取得した設定情報と取得された制御プログラムとに基づいて、導入プログラムを作成する作成部２５９と、を備える。【選択図】図４
2014146165.tif 000002
【特許請求の範囲】
【請求項１】
機器の制御に用いられる制御プログラムを管理する複数の外部装置それぞれに対して、制御プログラムの検索を行って当該制御プログラムの格納先を示す格納先情報を含む制御プログラム情報を生成する検索部と、
生成された前記複数の制御プログラム情報を記憶する制御プログラム情報記憶部と、
複数の機器それぞれ毎に、当該機器の制御元のコンピュータへの制御プログラムの導入時の設定に関する設定情報を記憶する設定情報記憶部と、
制御プログラムを導入するための導入プログラムの作成要求を受け付ける受付部と、
前記作成要求に基づく制御プログラム情報を前記制御プログラム情報記憶部から取得し、取得した前記制御プログラム情報に含まれる格納先情報に基づいて、外部装置から制御プログラムを取得する取得部と、
前記作成要求に基づく設定情報を前記設定情報記憶部から取得し、取得した前記設定情報と取得された前記制御プログラムとに基づいて、前記導入プログラムを作成する作成部と、
を備える情報処理システム。
【請求項２】
前記設定情報は、前記制御元のコンピュータへ制御プログラムをカスタマイズして導入するためのカスタマイズ情報を含み、
前記作成部は、前記設定情報と前記制御プログラムとに基づいて、前記導入プログラムとして、前記制御プログラムをカスタマイズして導入するためのプログラムを作成する請求項１に記載の情報処理システム。
【請求項３】
前記制御プログラムは、デバイスドライバプログラムであり、
前記導入プログラムは、インストーラプログラムであり、
前記カスタマイズ情報は、ポートを監視するポートモニタをカスタマイズする実行ファイル、ポートをカスタマイズする実行ファイル、及び前記インストーラプログラムをカスタマイズする実行ファイルの少なくともいずれかを示す請求項２に記載の情報処理システム。
【請求項４】
前記カスタマイズ情報は、前記複数の実行ファイルの少なくともいずれかの設定値又は設定ファイルを更に示す請求項３に記載の情報処理システム。
【請求項５】
前記制御プログラム情報は、前記制御プログラムの制御対象の機器を識別する機器識別情報と前記制御プログラムが動作可能な基本ソフトウェアを識別する基本ソフトウェア識別情報とを更に含み、
前記設定情報は、前記機器の位置を特定する位置特定情報を更に含み、
前記作成要求は、前記機器の選択情報と、前記制御元のコンピュータの基本ソフトウェア識別情報とを含み、
前記取得部は、前記選択情報に基づいて前記位置特定情報を取得し、取得した前記位置特定情報に基づいて前記機器から機器識別情報を取得し、前記基本ソフトウェア識別情報及び取得した前記機器識別情報を含む制御プログラム情報に含まれる格納先情報に基づいて、前記外部装置から前記制御プログラムを取得する請求項１〜４のいずれか１つに記載の情報処理システム。
【請求項６】
前記制御プログラム情報は、前記制御プログラムの制御対象の機器を識別する機器識別情報と前記制御プログラムが動作可能な基本ソフトウェアを識別する基本ソフトウェア識別情報とを更に含み、
前記作成要求は、前記機器の位置を特定する位置特定情報と、前記制御元のコンピュータの基本ソフトウェア識別情報とを含み、
前記取得部は、前記位置特定情報に基づいて前記機器から機器識別情報を取得し、前記基本ソフトウェア識別情報及び取得した前記機器識別情報を含む制御プログラム情報に含まれる格納先情報に基づいて、前記外部装置から前記制御プログラムを取得する請求項１〜４のいずれか１つに記載の情報処理システム。
【請求項７】
前記検索部は、外部装置との通信プロトコルに応じた方式で、制御プログラムを検索する請求項１〜６のいずれか１つに記載の情報処理システム。
【請求項８】
前記取得部は、取得した前記制御プログラムを前記制御プログラム情報に対応付けて前記制御プログラム情報記憶部に記憶し、当該制御プログラム情報を新たに取得する場合、所定条件を満たせば、前記制御プログラム情報記憶部から取得する請求項１〜７のいずれか１つに記載の情報処理システム。
【請求項９】
前記作成要求は、導入プログラムの配信要求であり、
作成された前記導入プログラムを配信する配信部を更に備える請求項１〜８のいずれか１つに記載の情報処理システム。
【請求項１０】
前記複数の機器の少なくともいずれかは、他の機器とメーカ又はベンダが異なり、
前記複数の外部装置の少なくともいずれかは、他の外部装置と異なるメーカ又はベンダが運営する請求項１〜９のいずれか１つに記載の情報処理システム。
【請求項１１】
機器の制御に用いられる制御プログラムを管理する複数の外部装置それぞれに対して、制御プログラムの検索を行って当該制御プログラムの格納先を示す格納先情報を含む制御プログラム情報を生成し、生成した当該複数の制御プログラム情報を制御プログラム情報記憶部に記憶する検索部と、
制御プログラムを導入するための導入プログラムの作成要求を受け付ける受付部と、
前記作成要求に基づく制御プログラム情報を前記制御プログラム情報記憶部から取得し、取得した前記制御プログラム情報に含まれる格納先情報に基づいて、外部装置から制御プログラムを取得する取得部と、
複数の機器それぞれ毎に、当該機器の制御元のコンピュータへの制御プログラムの導入時の設定に関する設定情報を記憶する設定情報記憶部から、前記作成要求に基づく設定情報を取得し、取得した前記設定情報と取得された前記制御プログラムとに基づいて、前記導入プログラムを作成する作成部と、
を備える情報処理装置。
【請求項１２】
機器の制御に用いられる制御プログラムを管理する複数の外部装置それぞれに対して、制御プログラムの検索を行って当該制御プログラムの格納先を示す格納先情報を含む制御プログラム情報を生成し、生成した当該複数の制御プログラム情報を制御プログラム情報記憶部に記憶する検索ステップと、
制御プログラムを導入するための導入プログラムの作成要求を受け付ける受付ステップと、
前記作成要求に基づく制御プログラム情報を前記制御プログラム情報記憶部から取得し、取得した前記制御プログラム情報に含まれる格納先情報に基づいて、外部装置から制御プログラムを取得する取得ステップと、
複数の機器それぞれ毎に、当該機器の制御元のコンピュータへの制御プログラムの導入時の設定に関する設定情報を記憶する設定情報記憶部から、前記作成要求に基づく設定情報を取得し、取得した前記設定情報と取得された前記制御プログラムとに基づいて、前記導入プログラムを作成する作成ステップと、
を含む作成方法。
【請求項１３】
機器の制御に用いられる制御プログラムを管理する複数の外部装置それぞれに対して、制御プログラムの検索を行って当該制御プログラムの格納先を示す格納先情報を含む制御プログラム情報を生成し、生成した当該複数の制御プログラム情報を制御プログラム情報記憶部に記憶する検索部と、
制御プログラムを導入するための導入プログラムの作成要求を受け付ける受付部と、
前記作成要求に基づく制御プログラム情報を前記制御プログラム情報記憶部から取得し、取得した前記制御プログラム情報に含まれる格納先情報に基づいて、外部装置から制御プログラムを取得する取得部と、
複数の機器それぞれ毎に、当該機器の制御元のコンピュータへの制御プログラムの導入時の設定に関する設定情報を記憶する設定情報記憶部から、前記作成要求に基づく設定情報を取得し、取得した前記設定情報と取得された前記制御プログラムとに基づいて、前記導入プログラムを作成する作成部と、
して情報処理装置を機能させるためのプログラム。
【請求項１４】
請求項１３に記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理装置、作成方法、プログラム及び記憶媒体に関する。
【背景技術】
【０００２】
従来から、プリンタを制御するためのプリンタドライバのインストール及び当該プリンタドライバのインストール時に必要な各種設定を自動化する技術が知られている（例えば、特許文献１参照）。この技術では、プリンタドライバ提供元から提供されるアプリケーションによりプリンタドライバのデータベースを構築し、データベース上でインストール対象のプリンタドライバを管理している。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、機器の使用環境において、全ての機器が同一メーカやベンダで統一されていることは稀であり、メーカやベンダが異なる複数の機器が混在しているような使用環境では、上述したような従来技術を採用することが難しい。
【０００４】
本発明は、上記事情に鑑みてなされたものであり、機器の使用環境に依存せずに、機器を制御する制御プログラムの導入に伴うコストを抑えることができる情報処理システム、情報処理装置、作成方法、プログラム及び記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上述した課題を解決し、目的を達成するために、本発明の一態様にかかる情報処理システムは、機器の制御に用いられる制御プログラムを管理する複数の外部装置それぞれに対して、制御プログラムの検索を行って当該制御プログラムの格納先を示す格納先情報を含む制御プログラム情報を生成する検索部と、生成された前記複数の制御プログラム情報を記憶する制御プログラム情報記憶部と、複数の機器それぞれ毎に、当該機器の制御元のコンピュータへの制御プログラムの導入時の設定に関する設定情報を記憶する設定情報記憶部と、制御プログラムを導入するための導入プログラムの作成要求を受け付ける受付部と、前記作成要求に基づく制御プログラム情報を前記制御プログラム情報記憶部から取得し、取得した前記制御プログラム情報に含まれる格納先情報に基づいて、外部装置から制御プログラムを取得する取得部と、前記作成要求に基づく設定情報を前記設定情報記憶部から取得し、取得した前記設定情報と取得された前記制御プログラムとに基づいて、前記導入プログラムを作成する作成部と、を備える。
【０００６】
また、本発明の別の態様にかかる情報処理装置は、機器の制御に用いられる制御プログラムを管理する複数の外部装置それぞれに対して、制御プログラムの検索を行って当該制御プログラムの格納先を示す格納先情報を含む制御プログラム情報を生成し、生成した当該複数の制御プログラム情報を制御プログラム情報記憶部に記憶する検索部と、制御プログラムを導入するための導入プログラムの作成要求を受け付ける受付部と、前記作成要求に基づく制御プログラム情報を前記制御プログラム情報記憶部から取得し、取得した前記制御プログラム情報に含まれる格納先情報に基づいて、外部装置から制御プログラムを取得する取得部と、複数の機器それぞれ毎に、当該機器の制御元のコンピュータへの制御プログラムの導入時の設定に関する設定情報を記憶する設定情報記憶部から、前記作成要求に基づく設定情報を取得し、取得した前記設定情報と取得された前記制御プログラムとに基づいて、前記導入プログラムを作成する作成部と、を備える。
【０００７】
また、本発明の別の態様にかかる作成方法は、機器の制御に用いられる制御プログラムを管理する複数の外部装置それぞれに対して、制御プログラムの検索を行って当該制御プログラムの格納先を示す格納先情報を含む制御プログラム情報を生成し、生成した当該複数の制御プログラム情報を制御プログラム情報記憶部に記憶する検索ステップと、制御プログラムを導入するための導入プログラムの作成要求を受け付ける受付ステップと、前記作成要求に基づく制御プログラム情報を前記制御プログラム情報記憶部から取得し、取得した前記制御プログラム情報に含まれる格納先情報に基づいて、外部装置から制御プログラムを取得する取得ステップと、複数の機器それぞれ毎に、当該機器の制御元のコンピュータへの制御プログラムの導入時の設定に関する設定情報を記憶する設定情報記憶部から、前記作成要求に基づく設定情報を取得し、取得した前記設定情報と取得された前記制御プログラムとに基づいて、前記導入プログラムを作成する作成ステップと、を含む。
【０００８】
また、本発明の別の態様にかかるプログラムは、機器の制御に用いられる制御プログラムを管理する複数の外部装置それぞれに対して、制御プログラムの検索を行って当該制御プログラムの格納先を示す格納先情報を含む制御プログラム情報を生成し、生成した当該複数の制御プログラム情報を制御プログラム情報記憶部に記憶する検索部と、制御プログラムを導入するための導入プログラムの作成要求を受け付ける受付部と、前記作成要求に基づく制御プログラム情報を前記制御プログラム情報記憶部から取得し、取得した前記制御プログラム情報に含まれる格納先情報に基づいて、外部装置から制御プログラムを取得する取得部と、複数の機器それぞれ毎に、当該機器の制御元のコンピュータへの制御プログラムの導入時の設定に関する設定情報を記憶する設定情報記憶部から、前記作成要求に基づく設定情報を取得し、取得した前記設定情報と取得された前記制御プログラムとに基づいて、前記導入プログラムを作成する作成部と、して情報処理装置を機能させるためのものである。
【０００９】
また、本発明の別の態様にかかるコンピュータ読み取り可能な記憶媒体は、上記プログラムを記憶したものである。
【発明の効果】
【００１０】
本発明によれば、機器の使用環境に依存せずに、機器を制御する制御プログラムの導入に伴うコストを抑えることができるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】図１は、第１実施形態の情報処理システムの構成の一例を示すブロック図である。
【図２】図２は、第１実施形態のＤＤＳサーバの構成の一例を示すブロック図である。
【図３】図３は、第１実施形態の属性情報の一例を示す図である。
【図４】図４は、第１実施形態のＤＩＳサーバの構成の一例を示すブロック図である。
【図５】図５は、第１実施形態の設定情報の一例を示す図である。
【図６】図６は、第１実施形態の設定情報の他の例を示す図である。
【図７】図７は、第１実施形態の情報処理システムで実行される登録処理の一例を示すフローチャートである。
【図８】図８は、第１実施形態の情報処理システムで実行される作成処理の一例を示すフローチャートである。
【図９】図９は、第２実施形態のＤＩＳサーバの一例を示す構成図である。
【図１０】図１０は、第２実施形態の設定情報の一例を示す図である。
【図１１】図１１は、変形例５のＤＩＳサーバの一例を示す構成図である。
【図１２】図１２は、各実施形態及び各変形例のＤＩＳサーバのハードウェア構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１２】
以下、添付図面を参照しながら、本発明にかかる情報処理システム、情報処理装置、作成方法、プログラム及び記憶媒体の実施形態を詳細に説明する。
【００１３】
（第１実施形態）
まず、第１実施形態の情報処理システムの構成について説明する。
【００１４】
図１は、第１実施形態の情報処理システム１の構成の一例を示すブロック図である。図１に示すように、情報処理システム１は、ＤＤＳ（ドライバダウンロードサービス）サーバ１０−１、１０−２（外部装置の一例）と、ＤＩＳ（ドライバインストーラサービス）サーバ２０と、管理者端末３０と、ユーザ端末４０と、機器５０−１、５０−２とを、備える。
【００１５】
ＤＤＳサーバ１０−１、１０−２、ＤＩＳサーバ２０、管理者端末３０、ユーザ端末４０及び機器５０−１、５０−２は、ネットワーク２を介して接続されている。ネットワーク２は、例えば、ＬＡＮ（Local  Area  Network）やインターネットなどにより実現できる。
【００１６】
なお、以下の説明では、ＤＤＳサーバ１０−１、１０−２を各々区別する必要がない場合は、単にＤＤＳサーバ１０と称する場合があり、機器５０−１、５０−２を各々区別する必要がない場合は、単に機器５０と称する場合がある。
【００１７】
ＤＤＳサーバ１０は、機器５０の制御に用いられるデバイスドライバのプログラム（以下、「デバイスドライバプログラム」と称する）を管理するものであり、機器５０及び機器５０のデバイスドライバプログラムを提供するメーカやベンダそれぞれが運営している。デバイスドライバは、例えば、機器５０がプリンタであればプリンタドライバが該当し、機器５０がプロジェクタであればプロジェクタドライバが該当する。
【００１８】
図１に示す例では、２台のＤＤＳサーバ１０が例示されているが、これに限定されず、ＤＤＳサーバ１０は何台であってもよい。第１実施形態では、ＤＤＳサーバ１０−１は、機器５０−１及び機器５０−１のデバイスドライバを提供するメーカが運営しており、ＤＤＳサーバ１０−２は、機器５０−２及び機器５０−２のデバイスドライバを提供するメーカが運営しているものとするが、これに限定されるものではない。なお、ＤＤＳサーバ１０−１を運営し、機器５０−１等を提供するメーカと、ＤＤＳサーバ１０−２を運営し、機器５０−２等を提供するメーカとは、異なるものとする。
【００１９】
ＤＤＳサーバ１０は、例えば、サーバとして機能するコンピュータなどの情報処理装置により実現できる。ＤＤＳサーバ１０は、１台のコンピュータで実現してもよいし、複数台のコンピュータで実現してもよい。
【００２０】
ＤＩＳサーバ２０は、デバイスドライバプログラムなどをインストールするインストーラのプログラム（導入プログラムの一例、以下、「パッケージ」と称する場合がある）の生成及び配信を行うものである。
【００２１】
ＤＩＳサーバ２０は、例えば、サーバとして機能するコンピュータなどの情報処理装置により実現できる。ＤＩＳサーバ２０は、１台のコンピュータで実現してもよいし、複数台のコンピュータで実現してもよい。
【００２２】
管理者端末３０、ユーザ端末４０、及び機器５０−１、５０−２は、顧客拠点に設けられているものとするが、これに限定されるものではない。顧客拠点は、例えば、ＤＩＳサーバ２０が提供するサービスを受ける会社のオフィスなどが該当する。
【００２３】
管理者端末３０は、顧客拠点に配置されたユーザ端末４０や機器５０を管理する管理者が使用する端末装置であり、例えば、ＰＣ（Personal  Computer）などの情報処理装置により実現できる。
【００２４】
ユーザ端末４０は、顧客拠点に配置された機器５０を利用する端末装置であり、例えば、ＰＣ（Personal  Computer）などの情報処理装置により実現できる。図１に示す例では、１台のユーザ端末４０が例示されているが、これに限定されず、ユーザ端末４０は複数台であってもよい。
【００２５】
機器５０は、ネットワーク２に接続可能な機器であればよく、例えば、プリンタ、複写機、複合機（ＭＦＰ：Multifunction  Peripheral）、スキャナ装置、及びファクシミリ装置等の画像形成装置やプロジェクタなどの各種電子機器が該当する。複合機は、複写機能、印刷機能、スキャナ機能、及びファクシミリ機能のうち少なくとも２つの機能を有するものである。
【００２６】
図１に示す例では、２台の機器５０が例示されているが、これに限定されず、機器５０は何台であってもよい。第１実施形態では、機器５０−１、５０−２は、プリンタであるものとするが、これに限定されるものではない。
【００２７】
このため、以下では、デバイスドライバプログラムがプリンタドライバのプログラム（以下では、「プリンタドライバプログラム」と称する場合がある）である場合について説明するが、これに限定されるものではない。
【００２８】
図２は、第１実施形態のＤＤＳサーバ１０の構成の一例を示すブロック図である。図２に示すように、ＤＤＳサーバ１０は、通信部１１０と、操作部１２０と、表示部１３０と、記憶部１４０と、制御部１５０とを、備える。
【００２９】
通信部１１０は、ネットワーク２を介してＤＩＳサーバ２０などの外部機器と通信するものであり、ＮＩＣ（Network  Interface  Card）などの通信装置により実現できる。
【００３０】
操作部１２０は、各種操作の入力を行うものであり、キーボード、マウス、タッチパッド、及びタッチパネルなどの入力装置により実現できる。
【００３１】
表示部１３０は、各種画面を表示するものであり、液晶ディスプレイやタッチパネル式ディスプレイなどの表示装置により実現できる。
【００３２】
記憶部１４０は、ＤＤＳサーバ１０で実行される各種プログラムやＤＤＳサーバ１０で行われる各種処理に使用されるデータなどを記憶する。記憶部１４０は、例えば、ＨＤＤ（Hard  Disk  Drive）、ＳＳＤ（Solid  State  Drive）、メモリカード、光ディスク、ＲＯＭ（Read  Only  Memory）、及びＲＡＭ（Random  Access  Memory）などの磁気的、光学的、又は電気的に記憶可能な記憶装置により実現できる。
【００３３】
記憶部１４０は、機器５０のプリンタドライバプログラム及び当該プリンタドライバプログラムに関する属性情報を対応付けて記憶する。但し、属性情報は、プリンタドライバプログラムの属性に関する情報に限定されるものではなく、例えば、プリンタドライバプログラムの特性に関する情報などを含んでいてもよい。
【００３４】
また、プリンタドライバプログラムは、同一の機器５０のものであっても、制御元のコンピュータのＯＳ（Operating  System）の種類、バージョン、及びビット数、並びにＰＤＬ（Page  Description  Language）などの相違により複数用意されることが通常である。このため、記憶部１４０は、機器５０の複数種類のプリンタドライバプログラムそれぞれと当該プリンタドライバプログラムの属性情報とを対応付けて記憶する。
【００３５】
例えば、記憶部１４０は、階層構造を有するフォルダにおいて、上位階層のフォルダに属性情報を記憶し、下位階層のフォルダにプリンタドライバプログラムを記憶する。これにより、記憶部１４０は、プリンタドライバプログラムと属性情報とを対応付けて記憶する。なお、ＤＤＳサーバ１０がプリンタドライバプログラムの正規の管理サイトであることを証明するために、階層構造のフォルダのルートフォルダにサイト証明書情報を記憶してもよい。なお、フォルダはディレクトリであってもよい。また、サイト証明書情報については後述する。
【００３６】
図３は、第１実施形態の属性情報の一例を示す図である。図３に示す例では、属性情報は、DeviceID、DeviceName、Vendor、OSInformation、Bit、DriverType、DriverName、InfFile、Port1、Port2、CustomPort1、CustomPort2、CustomInstaller、及びCustomFileTypeなどを含むが、これらに限定されるものではない。
【００３７】
DeviceID（機器識別情報の一例）は、プリンタドライバによる制御対象の機器を識別する識別子である。DeviceNameは、プリンタドライバによる制御対象の機器の機器名を示す。Vendorは、プリンタドライバを提供するベンダ又はメーカを示す。OSInformation（基本ソフトウェア識別情報の一例）は、プリンタドライバが動作可能な基本ソフトウェアであるＯＳを識別するものであり、例えば、ＯＳの種別、バージョン、及びビット数などを示す。Bitは、プリンタドライバのビット数を示す。DriverTypeは、プリンタドライバの種別を示す。DriverNameは、プリンタドライバのモデル名を示す。InfFileは、プリンタドライバプログラムのインストール用の設定が記述されたシステム定義ファイルを示す。Port1及びPort2は、プリンタドライバが使用可能な（サポートしている）ＯＳ標準のポートを示す。CustomPort1及びCustomPort2は、プリンタドライバが使用可能な（サポートしている）ＯＳ標準以外のポートを示す。CustomInstallerは、プリンタドライバプログラムをＯＳ標準の方式ではないカスタム方式でインストール可能な場合、カスタム方式のインストールで使用可能なプログラムやパラメータなどを示す。CustomFileTypeは、プリンタドライバプログラムをカスタム方式でインストール可能な場合、使用可能なカスタマイズ用の設定ファイルを示す。カスタマイズ用の設定ファイルは、例えば、プリンタドライバの初期値、機能制限、及び利用制限などに関する情報が設定されたファイルである。
【００３８】
ＯＳ標準のインストールでは、例えば、ＯＳがWindows（登録商標）であれば、SetDeviceCaps関数などを用いることで、プリンタドライバの初期値を所定の設定に制御してプリンタドライバプログラムをインストールできる。但し、ＯＳ標準のインストールでは、特定の機能を制限（例えば、設定値の変更不可）したり、利用を制限（例えば、使用不可）したりしてプリンタドライバプログラムをインストールすることは基本的にできない。
【００３９】
一方、カスタマイズ用のインストールでは、プリンタドライバプログラムのメーカやベンダ独自のインストール方式となるため、インストール時にメーカやベンダ独自のカスタマイズ用の設定ファイルに基づく設定を行うことができる。このため、特定の機能を制限したり、利用を制限したりしてプリンタドライバプログラムをインストールすることもできる。
【００４０】
なお、CustomPort1、CustomPort2、CustomInstaller、及びCustomFileTypeは、カスタム方式でインストールを行う場合に必要となる情報であり、第１実施形態において必須の情報ではなく、これらの情報を省略してもよい。
【００４１】
制御部１５０は、ＤＤＳサーバ１０の各部を制御するものであり、ＣＰＵ（Central  Processing  Unit）などの制御装置により実現できる。
【００４２】
例えば、制御部１５０は、ＤＩＳサーバ２０に対して、ＤＤＳサーバ１０がプリンタドライバプログラムの正規の管理サイトであることを証明するためのサイト証明書情報の発行を依頼する。そして制御部１５０は、発行されたサイト証明書情報を、プリンタドライバプログラム及び属性情報を対応付けて記憶する階層構造のフォルダのルートフォルダに記憶する。
【００４３】
また例えば、制御部１５０は、ＤＩＳサーバ２０に対して、ＤＤＳサーバ１０が管理している（記憶部１４０に記憶されている）プリンタドライバプログラムの登録を依頼したり、当該プリンタドライバプログラムを提供したりする。
【００４４】
図４は、第１実施形態のＤＩＳサーバ２０の構成の一例を示すブロック図である。図４に示すように、ＤＩＳサーバ２０は、通信部２１０と、操作部２２０と、表示部２３０と、記憶部２４０と、制御部２５０とを、備える。
【００４５】
通信部２１０は、ネットワーク２を介してＤＤＳサーバ１０、管理者端末３０、ユーザ端末４０及び機器５０などの外部機器と通信するものであり、ＮＩＣなどの通信装置により実現できる。
【００４６】
操作部２２０は、各種操作の入力を行うものであり、キーボード、マウス、タッチパッド、及びタッチパネルなどの入力装置により実現できる。
【００４７】
表示部２３０は、各種画面を表示するものであり、液晶ディスプレイやタッチパネル式ディスプレイなどの表示装置により実現できる。
【００４８】
記憶部２４０は、ＤＩＳサーバ２０で実行される各種プログラムやＤＩＳサーバ２０で行われる各種処理に使用されるデータなどを記憶する。記憶部２４０は、例えば、ＨＤＤ、ＳＳＤ、メモリカード、光ディスク、ＲＯＭ、及びＲＡＭなどの磁気的、光学的、又は電気的に記憶可能な記憶装置により実現できる。記憶部２４０は、設定情報記憶部２４１と、制御プログラム情報記憶部２４３とを、含む。
【００４９】
設定情報記憶部２４１は、機器５０それぞれ毎に、ユーザ端末４０など当該機器５０の制御元のコンピュータへのプリンタドライバプログラムの導入時の設定に関する設定情報を記憶する。第１実施形態では、設定情報は、管理者端末３０によりネットワーク２を介して設定情報記憶部２４１に記憶されるものとするが、これに限定されるものではない。
【００５０】
設定情報は、例えば、DeviceURL、PrinterName、PortType、PortName、PortAddress、MonitorInstaller、PortCreater、DriverName、DriverInstaller、DriverInstallerParam、DriverCustomFile、AddApplication1、AddApplication2、AddManualPath、AddManual1、AddManual2、OkBatch、及びErrBatchなどを含むが、これらに限定されるものではない。
【００５１】
DeviceURL（位置特定情報の一例）は、制御対象の機器５０の位置を特定するものであり、例えば、制御対象の機器５０のＵＲＬ（Uniform  Resource  Locator）を示す。PrinterNameは、ＤＩＳサーバ２０により生成されたパッケージで機器５０のプリンタドライバをインストールした際に、生成されるプリンタアイコンの名前を示す。PortTypeは、パッケージが作成し、機器５０のプリンタドライバが使用するポートの種類を示す。PortNameは、パッケージが作成し、機器５０のプリンタドライバが使用するポートの名前を示す。PortAddressは、パッケージが作成し、機器５０のプリンタドライバが使用するポートのＵＲＬを示す。MonitorInstallerは、パッケージが作成するポートがＯＳ（Operating  System）標準のものかカスタムポートのものかを示す。PortCreaterは、パッケージが作成するポートがカスタムポートのものの場合、ポートの作成プログラム（例えば、実行ファイル）を示す。DriverNameは、機器５０のプリンタドライバのモデル名を示す。DriverInstallerは、パッケージが機器５０のプリンタドライバをインストールする方式が、ＯＳ標準の方式かカスタム方式かを示す。DriverInstallerParamは、プリンタドライバの初期パラメータを示す。DriverCustomFileは、主として、パッケージのインストール方式がカスタム方式の場合、カスタマイズ用の設定ファイルを示す。
【００５２】
なお、MonitorInstaller、PortCreater、DriverInstaller、及びDriverCustomFileは、パッケージのインストール方式がカスタム方式の場合に必要となる情報であり、第１実施形態において必須の情報ではなく、これらの情報を省略してもよい。
【００５３】
AddApplication1及びAddApplication2は、パッケージが機器５０のプリンタドライバとともにインストールするアプリケーションのプログラムを示す。AddManualPathは、パッケージが機器５０のプリンタドライバとともにインストールするマニュアル類のパスを示す。AddManual1及びAddManual2は、パッケージが機器５０のプリンタドライバとともにインストールするマニュアル類を示す。OkBatchは、パッケージによるインストールに成功した場合に、その後に起動するアプリケーションやバッチファイルを示す。ErrBatchは、パッケージによるインストールに失敗した場合に、その後に起動するアプリケーションやバッチファイルを示す。
【００５４】
なお、AddApplication1、AddApplication2、AddManualPath、AddManual1、AddManual2、OkBatch、及びErrBatchは、プリンタドライバのインストール時にマニュアルやアプリケーションのインストールを付随して行うためのものであり、第１実施形態において必須の情報ではなく、これらの情報を省略してもよい。
【００５５】
図５は、第１実施形態の設定情報の一例を示す図である。図５に示す設定情報では、DeviceURLは133.139.237.80を示し、PrinterNameはPAAを示し、PortTypeはTCP/IPを示し、PortNameはIP＿133.139.237.80を示し、PortAddressは133.139.237.80を示し、MonitorInstaller、PortCreater、及びDriverInstallerはパッケージが作成するポートがＯＳ標準のポートであるため、Normalを示し、DriverNameはDAAを示す。なお、図５に示す例では、DriverInstallerParam、DriverCustomFile、AddApplication1、AddApplication2、AddManualPath、AddManual1、AddManual2、OkBatch、及びErrBatchには、値が設定されていない。
【００５６】
図６は、第１実施形態の設定情報の他の例を示す図である。図６に示す設定情報では、DeviceURLは133.139.237.80を示し、PrinterNameはPBBを示し、PortTypeはPoint&Printを示し、PortNameはSharedPrinter＿Aを示し、PortAddressは\\Server\共有Printerを示し、MonitorInstaller、PortCreater、及びDriverInstallerはパッケージが作成するポートがＯＳ標準のポートであるため、Normalを示し、DriverNameはDBBを示し、DriverInstallerParamは、プリンタドライバの初期パラメータを定義した初期値設定ファイルである/c  custom＿setting.cstを示す。なお、図６に示す例では、DriverCustomFile、AddApplication1、AddApplication2、AddManualPath、AddManual1、AddManual2、OkBatch、及びErrBatchには、値が設定されていない。
【００５７】
制御プログラム情報記憶部２４３については、後述する。
【００５８】
制御部２５０は、ＤＩＳサーバ２０の各部を制御するものであり、ＣＰＵなどの制御装置により実現できる。制御部２５０は、発行部２５１と、検索部２５３と、受付部２５５と、取得部２５７と、作成部２５９と、配信部２６１とを、含む。ここで、制御部２５０は、記憶部２４０に記憶されているプログラムを起動（実行）することにより、発行部２５１、検索部２５３、受付部２５５、取得部２５７、作成部２５９、及び配信部２６１をソフトウェアとして実現する。
【００５９】
発行部２５１は、ＤＤＳサーバ１０それぞれからサイト証明書情報の発行を依頼されると、当該ＤＤＳサーバ１０がプリンタドライバプログラムの正規の管理サイトの要件を満たすことを確認し、サイト証明書情報を発行する。
【００６０】
例えば、ＤＤＳサーバ１０は、ＤＩＳサーバ２０に対して、サイト証明書情報の発行の依頼とともにプリンタドライバプログラムや当該プリンタドライバプログラムの属性情報を記憶する階層構造のフォルダのルートフォルダのＵＲＬ（以下、「RootURL」と称する場合がある）を通知する。発行部２５１は、通知されたRootURLなどを確認し、ＤＤＳサーバ１０がプリンタドライバプログラムの正規の管理サイトの要件を満たせば、ＤＤＳサーバ１０にＩＤ及びサイト証明書情報を発行するとともに、通知されたRootURL及び発行したＩＤを対応付けて記憶部２４０に記憶する。
【００６１】
また発行部２５１は、管理者端末３０により設定情報記憶部２４１に設定情報が記憶されると、管理者端末３０に対して、パッケージの配信を要求する際に必要となる配信証明書情報を発行する。ここで、管理者端末３０は、管理者のＩＤを用いてＤＩＳサーバ２０にアクセスして設定情報を設定情報記憶部２４１に記憶し、発行部２５１は、管理者のＩＤを用いて配信証明書情報を発行するものとする。
【００６２】
なお詳細は後述するが、本実施形態では、ユーザ端末４０がＤＩＳサーバ２０にパッケージの配信を要求するため、管理者端末３０の管理者は、発行された配信証明書情報をユーザ端末４０のユーザに配布するものとする。配信証明書情報の配布は、両端末間の通信で行ってもよいし、電子メールの送受で行ってもよいし、ＵＳＢ（Universal  Serial  Bus）メモリなど所定の携帯型記憶媒体を用いて行ってもよい。
【００６３】
検索部２５３は、ＤＤＳサーバ１０それぞれに対して、機器５０のプリンタドライバプログラムの検索を行って当該プリンタドライバプログラムの格納先を示すＵＲＬ（格納先情報の一例、以下、「DriverURL」と称する場合がある）を含む制御プログラム情報を生成する。そして検索部２５３は、生成した複数の制御プログラム情報を制御プログラム情報記憶部２４３に記憶する。
【００６４】
具体的には、検索部２５３は、ＤＤＳサーバ１０それぞれからプリンタドライバプログラムの登録が依頼されると、当該ＤＤＳサーバ１０に対して、機器５０のプリンタドライバプログラムの検索を行う。
【００６５】
例えば、ＤＤＳサーバ１０は、ＤＩＳサーバ２０に対して、プリンタドライバプログラムの登録依頼とともに発行部２５１により発行されたＩＤを通知する。検索部２５３は、通知されたＩＤに対応付けられたRootURLを記憶部２４０から取得し、当該RootURLを基に前述のルートフォルダを検索し、サイト証明書情報を見つければ、正規の管理サイトであることを確認する。これにより、ＤＩＳサーバ２０が悪意のある不正なサイトに誘導され、ウィルス等が仕込まれたプリンタドライバプログラムを取得してしまうことを防止できる。
【００６６】
検索部２５３は、正規の管理サイトであることを確認すると、ルートフォルダの下位階層のフォルダを順次検索して属性情報を見つけ、属性情報を見つけたフォルダの下位階層のフォルダを更に検索してプリンタドライバプログラムを見つける。そして検索部２５３は、検索した属性情報に、検索したプリンタドライバプログラムが記憶されているフォルダのDriverURL、及び検索日時などを付加した制御プログラム情報を生成し、制御プログラム情報記憶部２４３に記憶する。
【００６７】
ここで、検索部２５３は、ＤＤＳサーバ１０との通信プロトコルに応じた方式で、プリンタドライバプログラムを検索する。例えば、ＤＤＳサーバ１０との通信プロトコルがＦＴＰ（File  Transfer  Protocol）であれば、上述のように階層構造のフォルダを順次検索する。また例えば、ＤＤＳサーバ１０との通信プロトコルがＷｅｂで用いられるプロトコルであれば、当該プロトコル用のＩ／Ｆ（インタフェース）関数を用いてプリンタドライバプログラムを検索する。
【００６８】
なお、ＤＤＳサーバ１０で管理されているプリンタドライバプログラム及び属性情報は、アップデート等が行われることがあるので、検索部２５３は、制御プログラム情報記憶部２４３に記憶されている制御プログラム情報を最新の状態に保つため、ＤＤＳサーバ１０それぞれに対して、上述の検索を定期的に行うことが好ましい。検索部２５３は、２回目以降の検索については、自発的に行ってもよいし、ＤＤＳサーバ１０からの指示に基づいて行ってもよい。
【００６９】
制御プログラム情報記憶部２４３は、検索部２５３により生成された複数の制御プログラム情報を記憶する。
【００７０】
受付部２５５は、制御プログラムを導入するためのパッケージの作成要求を受け付ける。具体的には、受付部２５５は、作成要求として、パッケージの配信要求を受け付ける。配信要求は、例えば、プリンタドライバプログラムの制御対象の機器５０の選択情報と、プリンタドライバプログラムがインストールされるユーザ端末４０のＯＳのOSInformationと、を含む。
【００７１】
例えば、受付部２５５は、ユーザ端末４０から、配信証明書情報を受け付け、配信証明書情報が正当なものであれば、そのまま配信要求を受け付け、配信証明書情報が不正なものであれば、配信要求を破棄する。これにより、正規の配信証明書情報を有するユーザからの配信要求のみが受け付けられるので、不正な利用者によるパッケージの取得を防止できる。
【００７２】
次に受付部２５５は、受け付けた配信証明書情報に基づいて、管理者端末３０の管理者が設定情報記憶部２４１に記憶した設定情報、即ち、管理者端末３０の管理者が管理している機器５０を特定できるので、管理者端末３０の管理者が管理している機器５０のリストを生成し、配信要求元のユーザ端末４０に送信する。
【００７３】
次に配信要求元のユーザ端末４０は、機器５０のリストの中から制御対象の機器５０を選択するとともに、自身のＯＳのOSInformationを入力する。そして配信要求元のユーザ端末４０は、機器５０が選択されたことを示す選択情報と入力したOSInformationをＤＩＳサーバ２０に送信し、受付部２５５がこれらを受け付ける。
【００７４】
取得部２５７は、受付部２５５により受け付けられた作成要求（配信要求）に基づく制御プログラム情報を制御プログラム情報記憶部２４３から取得し、取得した制御プログラム情報に含まれるＵＲＬに基づいて、ＤＤＳサーバ１０からプリンタドライバプログラムを取得する。
【００７５】
具体的には、取得部２５７は、受付部２５５により受け付けられた選択情報に基づいて、設定情報記憶部２４１から選択された機器５０の設定情報に含まれるDeviceURLを取得し、取得したDeviceURLに基づいて機器５０からDeviceIDを取得する。そして取得部２５７は、受付部２５５により受け付けられたOSInformation及び取得したDeviceIDを含む制御プログラム情報に含まれるDriverURLを制御プログラム情報記憶部２４３から取得し、取得したDriverURLに基づいて、ＤＤＳサーバ１０からプリンタドライバプログラムを取得する。
【００７６】
作成部２５９は、受付部２５５により受け付けられた作成要求（配信要求）に基づく設定情報を設定情報記憶部２４１から取得し、取得した設定情報と取得部２５７により取得されたプリンタドライバプログラムとに基づいて、パッケージを作成する。
【００７７】
具体的には、作成部２５９は、受付部２５５により受け付けられた選択情報に基づいて、設定情報記憶部２４１から選択された機器５０の設定情報を取得し、取得した設定情報で定義された各情報に従って、プリンタドライバプログラムのパッケージを作成する。
【００７８】
例えば、パッケージは、ユーザ端末４０などインストール先のコンピュータにおいて、ポートモニタのインストール、ポートの作成、プリンタドライバプログラムのインストール、及びインストール先のコンピュータの再起動などを行うものである。このため、作成部２５９は、取得した設定情報を用いて、このような処理を行うためのパッケージを作成する。
【００７９】
配信部２６１は、作成部２５９により作成されたパッケージをユーザ端末４０に配信する。この後、ユーザ端末４０は配信されたパッケージを用いてプリンタドライバプログラムなどをインストールする。
【００８０】
なお、ＤＩＳサーバ２０は、上述した各部の全てを必須の構成とする必要はなく、その一部を省略した構成としてもよい。
【００８１】
次に、第１実施形態の情報処理システムの動作について説明する。
【００８２】
図７は、第１実施形態の情報処理システム１で実行される登録処理の一例を示すフローチャートである。
【００８３】
まず、検索部２５３は、ＤＤＳサーバ１０から、プリンタドライバプログラムの登録依頼とともに発行部２５１により発行されたＩＤの通知を受け付ける（ステップＳ１０１）。
【００８４】
続いて、検索部２５３は、通知されたＩＤに対応付けられたRootURLを記憶部２４０から取得し、当該RootURLが示す管理サイト内でプリンタドライバプログラム等の検索を開始する（ステップＳ１０３）。
【００８５】
続いて、検索部２５３は、RootURLを基にルートフォルダを検索し、サイト証明書情報の有無などを確認することで、管理サイトを認証する（ステップＳ１０５）。
【００８６】
続いて、管理サイトが正規のサイトであれば（ステップＳ１０７でＹｅｓ）、検索部２５３は、検索を続行し、ルートフォルダの下位階層のフォルダを順次検索して属性情報を見つけ、属性情報を見つけたフォルダの下位階層のフォルダを更に検索してプリンタドライバプログラムを見つける（ステップＳ１０９）。
【００８７】
続いて、検索部２５３は、検索した属性情報に、検索したプリンタドライバプログラムが記憶されているフォルダのDriverURL、及び検索日時などを付加した制御プログラム情報を生成し、制御プログラム情報記憶部２４３に記憶する（ステップＳ１１１）。
【００８８】
一方、管理サイトが正規のサイトでなければ（ステップＳ１０７でＮｏ）、検索部２５３は、検索を終了する。
【００８９】
図８は、第１実施形態の情報処理システム１で実行される作成処理の一例を示すフローチャートである。
【００９０】
まず、受付部２５５は、ユーザ端末４０から、配信証明書情報を受け付ける（ステップＳ２０１）。
【００９１】
続いて、受付部２５５は、受け付けた配信証明書情報を認証する（ステップＳ２０３）。
【００９２】
続いて、配信証明書情報が正規の証明書情報であれば（ステップＳ２０５でＹｅｓ）、受付部２５５は、受け付けた配信証明書情報に基づいて、管理者端末３０の管理者が管理している機器５０のリストを生成し、配信要求元のユーザ端末４０に送信する。そして受付部２５５は、ユーザ端末４０から、機器５０が選択されたことを示す選択情報と入力されたOSInformationを受け付ける（ステップＳ２０７）。
【００９３】
続いて、取得部２５７は、受付部２５５により受け付けられた選択情報に基づいて、設定情報記憶部２４１から選択された機器５０の設定情報に含まれるDeviceURLを取得する（ステップＳ２０９）。
【００９４】
続いて、取得部２５７は、取得したDeviceURLに基づいて機器５０からDeviceIDを取得する（ステップＳ２１１）。
【００９５】
続いて、取得部２５７は、受付部２５５により受け付けられたOSInformation及び取得したDeviceIDを含む制御プログラム情報に含まれるDriverURLを制御プログラム情報記憶部２４３から取得する（ステップＳ２１３）。
【００９６】
続いて、取得部２５７は、取得したDriverURLに基づいて、ＤＤＳサーバ１０からプリンタドライバプログラムをダウンロードする（ステップＳ２１５）。
【００９７】
続いて、作成部２５９は、受付部２５５により受け付けられた選択情報に基づいて、設定情報記憶部２４１から選択された機器５０の設定情報を取得し、取得した設定情報で定義された各情報に従って、ダウンロードされたプリンタドライバプログラムをパッケージングし、パッケージを作成する（ステップＳ２１７）。
【００９８】
続いて、配信部２６１は、作成部２５９により作成されたパッケージをユーザ端末４０に配信する（ステップＳ２１９）。この後、ユーザ端末４０は配信されたパッケージを用いてプリンタドライバプログラムなどをインストールする。
【００９９】
一方、配信証明書情報が正規の証明書情報でなければ（ステップＳ２０５でＮｏ）、制御部２５０は、エラー処理を行い（ステップＳ２２１）、処理を終了する。
【０１００】
以上のように第１実施形態では、ＤＩＳサーバが、メーカやベンダ各社が管理サイト上で管理しているデバイスドライバプログラムの制御プログラム情報や、デバイスドライバプログラムの制御対象の機器の設定情報を管理している。このため第１実施形態によれば、メーカやベンダが異なる複数の機器が混在しているような使用環境においても、デバイスドライバプログラムのパッケージの自動生成が可能となるので、機器の使用環境に依存せずに、デバイスドライバプログラムの導入に伴うコストを抑えることができる。
【０１０１】
例えば、管理者端末の管理者などが機器毎のパッケージを予め作成しておくなどの必要がないため、管理者の作業コストを抑えることができる。特に、デバイスドライバプログラムは、同一の機器のものであっても、制御元のコンピュータのＯＳの種類、バージョン、及びビット数、並びにＰＤＬ（Page  Description  Language）などの相違により異なるため、管理者の作業コストを大幅に抑えることができる。更に、デバイスドライバプログラムが同一であっても導入先のコンピュータに応じて、導入時の設定が異なる場合もあるため、管理者の作業コストを大幅に抑えることができる。
【０１０２】
また、このような大量のデバイスドライバプログラムのパッケージを管理者などが予め作成する場合、設定ミスなどが混在する可能性もあるが、第１実施形態では、パッケージの自動生成が可能となるので、このような事態も減らすことができる。
【０１０３】
（第２実施形態）
第２実施形態では、デバイスドライバプログラムをカスタマイズして導入する例について説明する。以下では、第１実施形態との相違点の説明を主に行い、第１実施形態と同様の機能を有する構成要素については、第１実施形態と同様の名称・符号を付し、その説明を省略する。
【０１０４】
図９は、第２実施形態のＤＩＳサーバ６２０の一例を示す構成図である。図９に示すように、第２実施形態のＤＩＳサーバ６２０は、記憶部７４０の設定情報記憶部７４１及び制御部７５０の作成部７５９が、第１実施形態と相違する。
【０１０５】
設定情報記憶部７４１に記憶されている設定情報は、更に、ユーザ端末４０などの制御元のコンピュータへプリンタドライバプログラムをカスタマイズしてインストールするためのカスタマイズ情報を含む。
【０１０６】
第２実施形態では、設定情報は、更に、MonitorInstallerParam及びPortCreaterParamを含む。MonitorInstallerParamは、パッケージが作成するポートがカスタムポートの場合のパラメータであり、PortCreaterParamは、ポートの作成プログラムのパラメータである。
【０１０７】
なお、カスタマイズ情報は、例えば、MonitorInstaller（ポートモニタをカスタマイズする実行ファイルの一例）、MonitorInstallerParam（設定値の一例）、PortCreater（ポートをカスタマイズする実行ファイルの一例）、PortCreaterParam（設定値の一例）、DriverInstaller（インストーラプログラムをカスタマイズする実行ファイルの一例）、DriverInstallerParam（設定値の一例）、及びDriverCustomFile（設定ファイルの一例）などが該当するが、これらに限定されるものではない。
【０１０８】
図１０は、第２実施形態の設定情報の一例を示す図である。図１０に示す設定情報では、DeviceURLは133.139.237.80を示し、PrinterNameはPCCを示し、PortTypeはMaplePort-TCP/IPを示し、PortNameは133.139.237.80@を示し、PortAddressは\\133.139.237.80を示し、MonitorInstallerはMM＿Installer.exeを示し、PortCreaterはMM＿PortCreater.exeを示し、PortCreaterParamは-t  TCPIP  −n  133.139.237.80@  −a  \\133.139.237.80を示し、DriverNameはDCCを示し、DriverInstallerはRP＿Setup.exeを示し、DriverInstallerParamは、/s/I  2in1.rcfを示し、DriverCustomFileは、2in1.rcfを示す。
【０１０９】
ここで、DriverInstallerであるRP＿Setup.exeは、インストール時に、DriverCustomFileである2in1.rcfに基づく設定を行うことができる。また、MonitorInstallerであるMM＿Installer.exeは、例えば、印刷枚数をカウントするなど特殊なポートをサポートするために必要となる。なお、図１０に示す例では、MonitorInstallerParam、AddApplication1、AddApplication2、AddManualPath、AddManual1、AddManual2、OkBatch、及びErrBatchには、値が設定されていない。
【０１１０】
なお、各情報が示す実行ファイルや設定ファイルの実体は、例えば、ドライバ開発メーカやポートモニタ開発メーカなどから提供され、記憶部７４０に記憶されている。なお、記憶部７４０への記憶する主体は、ＤＩＳサーバ６２０でもよいし、管理者端末３０であってもよい。但し、DriverCustomFileについては、管理者端末３０の管理者が作成し、記憶部７４０へ記憶する。
【０１１１】
作成部７５９は、受付部２５５により受け付けられた作成要求（配信要求）に基づく設定情報を設定情報記憶部７４１から取得し、取得した設定情報と取得部２５７により取得されたプリンタドライバプログラムとに基づいて、プリンタドライバプログラムをカスタマイズして導入するためのパッケージを作成する。
【０１１２】
例えば、パッケージは、ユーザ端末４０などインストール先のコンピュータにおいて、カスタマイズ用のポートモニタのインストール、カスタマイズ用のポートの作成、カスタマイズ用のプリンタドライバプログラムのインストール、及びインストール先のコンピュータの再起動などを行うものである。このため、作成部７５９は、取得した設定情報（特に、MonitorInstaller、MonitorInstallerParam、PortCreater、PortCreaterParam、DriverInstaller、DriverInstallerParam、及びDriverCustomFileなど）を用いて、このような処理を行うためのパッケージを作成する。
【０１１３】
以上のように第２実施形態では、設定情報がカスタマイズ情報を含んでいるため、デバイスドライバプログラムをカスタマイズして導入することができる。このため、特定の機能を制限したり、利用を制限したりしてデバイスドライバプログラムをインストールすることができ、経費節減やセキュリティ等の要望に応えることもできる。
【０１１４】
（変形例）
なお、本発明は、上記各実施形態に限定されるものではなく、種々の変形が可能である。
【０１１５】
（変形例１）
上記各実施形態では、ＤＩＳサーバ２０が機器５０のリストを生成し、ユーザ端末４０が機器５０のリストの中から制御対象の機器５０を選択することで、制御対象の機器を決定するようにしたが、ユーザ端末４０が制御対象の機器５０のDeviceURLを直接指定するようにしてもよい。
【０１１６】
この場合、受付部２５５は、ユーザ端末４０から、配信証明書情報とともにOSInformation及びDeviceURLを受け付ければよい。そして取得部２５７は、受付部２５５により受け付けられたDeviceURLに基づいて機器５０からDeviceIDを取得すればよい。
【０１１７】
（変形例２）
上記各実施形態では、ＤＩＳサーバ２０が、配信証明書情報に基づいて機器５０のリストを生成したが、ＤＩＳサーバ２０が、ネットワーク２に接続されている機器５０を検出して機器５０のリストを生成するようにしてもよい。
【０１１８】
（変形例３）
上記各実施形態において、取得部２５７は、ＤＤＳサーバ１０から取得したプリンタドライバプログラムを制御プログラム情報に対応付けて制御プログラム情報記憶部２４３に記憶しておき（キャッシュしておき）、当該プリンタドライバプログラムを新たに取得する場合、所定条件を満たせば、制御プログラム情報記憶部２４３から取得するようにしてもよい。所定条件は、例えば、プリンタドライバプログラムが取得されてからの経過時間が閾値を満たすかなどである。このようにすれば、プリンタドライバプログラムの２度目以降のパッケージの作成時間を大幅に削減できる。
【０１１９】
（変形例４）
上記各実施形態では、ユーザ端末４０からパッケージの配信要求を行ったが、管理者端末３０からパッケージの配信要求を行い、ユーザ端末４０に配信させるようにしてもよい。
【０１２０】
（変形例５）
上記各実施形態では、ＤＩＳサーバ２０が１台の装置である場合を例に取り説明したが、ＤＩＳサーバ２０の各部を複数の装置で備えるようにしてもよい。例えば、図１１に示すように、第１ＤＩＳサーバ８３０〜第３ＤＩＳサーバ８５０で構成されるサーバシステム８２０（サーバ装置群）としてＤＩＳサーバを実現し、第１ＤＩＳサーバ８３０が、設定情報記憶部２４１と制御プログラム情報記憶部２４３とを備え、第２ＤＩＳサーバ８４０が、発行部２５１と検索部２５３とを備え、第３ＤＩＳサーバ８５０が、受付部２５５と取得部２５７と作成部２５９と配信部２６１を備えるようにしてもよい。この場合、第１ＤＩＳサーバ８３０〜第３ＤＩＳサーバ８５０が互いに通信してやりとりすればよい。
【０１２１】
また上記各実施形態及び変形例５のＤＩＳサーバが有する情報の少なくともいずれかを外部（例えば、クラウド上）に記憶するようにしてもよい。
【０１２２】
（ハードウェア構成）
図１２は、各実施形態及び各変形例のＤＩＳサーバのハードウェア構成の一例を示すブロック図である。図１２に示すように、各実施形態及び各変形例のＤＩＳサーバは、ＣＰＵなどの制御装置９０１と、ＲＯＭやＲＡＭなどの記憶装置９０２と、ＨＤＤやＳＳＤなどの外部記憶装置９０３と、ディスプレイなどの表示装置９０４と、マウスやキーボードなどの入力装置９０５と、ＮＩＣなどの通信装置９０６とを、備えており、通常のコンピュータを利用したハードウェア構成で実現できる。
【０１２３】
各実施形態及び各変形例のＤＩＳサーバで実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、ＣＤ−Ｒ、メモリカード、ＤＶＤ（Digital  Versatile  Disk）、フレキシブルディスク（ＦＤ）等のコンピュータで読み取り可能な記憶媒体に記憶されて提供される。
【０１２４】
また、各実施形態及び各変形例のＤＩＳサーバで実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、各実施形態及び各変形例のＤＩＳサーバで実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するようにしてもよい。また、各実施形態及び各変形例のＤＩＳサーバで実行されるプログラムを、ＲＯＭ等に予め組み込んで提供するようにしてもよい。
【０１２５】
各実施形態及び各変形例のＤＩＳサーバで実行されるプログラムは、上述した各部をコンピュータ上で実現させるためのモジュール構成となっている。実際のハードウェアとしては、制御装置９０１が外部記憶装置９０３からプログラムを記憶装置９０２上に読み出して実行することにより、上記各部がコンピュータ上で実現されるようになっている。
【符号の説明】
【０１２６】
１  情報処理システム
２  ネットワーク
１０−１、１０−２（１０）  ＤＤＳサーバ
２０、６２０  ＤＩＳサーバ
３０  管理者端末
４０  ユーザ端末
５０−１、５０−２（５０）  機器
１１０  通信部
１２０  操作部
１３０  表示部
１４０  記憶部
１５０  制御部
２１０  通信部
２２０  操作部
２３０  表示部
２４０、７４０  記憶部
２４１、７４１  設定情報記憶部
２４３  制御プログラム情報記憶部
２５０、７５０  制御部
２５１  発行部
２５３  検索部
２５５  受付部
２５７  取得部
２５９、７５９  作成部
２６１  配信部
８２０  サーバシステム
８３０  第１ＤＩＳサーバ
８４０  第２ＤＩＳサーバ
８５０  第３ＤＩＳサーバ
９０１  制御装置
９０２  記憶装置
９０３  外部記憶装置
９０４  表示装置
９０５  入力装置
９０６  通信装置
【先行技術文献】
【特許文献】
【０１２７】
【特許文献１】特開２００６−１３４２４５号公報
【図１】
2014146165.tif 000003
【図２】
2014146165.tif 000004
【図３】
2014146165.tif 000005
【図４】
2014146165.tif 000006
【図５】
2014146165.tif 000007
【図６】
2014146165.tif 000008
【図７】
2014146165.tif 000009
【図８】
2014146165.tif 000010
【図９】
2014146165.tif 000011
【図１０】
2014146165.tif 000012
【図１１】
2014146165.tif 000013
【図１２】
2014146165.tif 000014