(57)【要約】      （修正有）【課題】Ｖ４プリンタドライバ又は同様の制限を有するプリンタドライバにおいて、一般ユーザの権限で取得した情報を、他の一般ユーザと共有することを容易にする。【解決手段】クライアント装置は、プリンタドライバがインストールされた情報処理装置であって、情報処理装置にログインした一の利用者の権限で取得又は設定した所定の情報を、他の利用者の権限で読込可能な第１の記憶領域に記憶する共有情報記憶部と、他の利用者が前記情報処理装置にログインした後、第１の記憶領域に記憶された所定の情報を、他の利用者の権限で書込可能であり、かつ、プリンタドライバに関する各モジュールから利用可能な第２の記憶領域に記憶する共有情報管理部と、を有する。【選択図】図６
2019160288.tif 000002
【特許請求の範囲】
【請求項１】
プリンタドライバがインストールされた情報処理装置であって、
前記情報処理装置にログインした一の利用者の権限で取得又は設定した所定の情報を、他の利用者の権限で読込可能な第１の記憶領域に記憶する情報記憶部と、
前記他の利用者が前記情報処理装置にログインした後、前記第１の記憶領域に記憶された前記所定の情報を、前記他の利用者の権限で書込可能であり、かつ前記プリンタドライバに関する各モジュールから利用可能な第２の記憶領域に記憶する情報管理部と、
を有する、情報処理装置。
【請求項２】
前記プリンタドライバに対応する画像形成装置と双方向通信を行い、前記画像形成装置の情報を含む前記所定の情報を取得する双方向通信部を有する、請求項１に記載の情報処理装置。
【請求項３】
前記第２の記憶領域は、前記プリンタドライバに対応するストアデバイスアプリから読込可能な記憶領域を含む、請求項１又は２に記載の情報処理装置。
【請求項４】
前記第２の記憶領域は、前記プリンタドライバ、及び前記他の利用者に対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇを含む、請求項１乃至３のいずれか一項に記載の情報処理装置。
【請求項５】
前記情報管理部は、前記プリンタドライバに対応する論理プリンタの情報に基づいて、前記ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇが格納されている場所を特定する、請求項４に記載の情報処理装置。
【請求項６】
前記プリンタドライバに対応するストアデバイスアプリを用いて前記一の利用者の権限で取得又は設定した前記所定の情報を、前記一の利用者に対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇに記憶する情報格納部を有し、
前記情報記憶部は、前記ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇを介して前記一の利用者の権限で取得又は設定した前記所定の情報を取得し、取得した前記所定の情報を前記第１の記憶領域に記憶する、請求項１又は２に記載の情報処理装置。
【請求項７】
前記情報記憶部は、前記プリンタドライバが印刷を実行するときに、前記一の利用者の権限で取得又は設定した前記所定の情報を、前記第１の記憶領域に記憶する、請求項６に記載の情報処理装置。
【請求項８】
前記情報記憶部は、前記プリンタドライバが、印刷の設定を行う印刷設定画面を表示するときに、前記一の利用者の権限で取得又は設定した前記所定の情報を前記第１の記憶領域に記憶する、請求項６に記載の情報処理装置。
【請求項９】
前記情報管理部は、前記他の利用者が前記情報処理装置にログインしたとき、前記第１の記憶領域に記憶した前記所定の情報を前記第２の記憶領域に記憶する、請求項１乃至８のいずれか一項に記載の情報処理装置。
【請求項１０】
前記情報管理部は、前記他の利用者が前記情報処理装置にログイン中に定期的に、前記第１の記憶領域に記憶した前記所定の情報を前記第２の記憶領域に記憶する、請求項１乃至９のいずれか一項に記載の情報処理装置。
【請求項１１】
前記情報管理部は、前記他の利用者による所定の操作に応じて、前記第１の記憶領域に記憶した前記所定の情報を、前記第２の記憶領域に記憶する、請求項１乃至１０のいずれか一項に記載の情報処理装置。
【請求項１２】
プリンタドライバがインストールされた情報処理装置が実行する情報共有方法であって、
前記情報処理装置が、
前記情報処理装置にログインした一の利用者の権限で取得又は設定した所定の情報を、他の利用者の権限で読込可能な第１の記憶領域に記憶するステップと、
前記他の利用者が前記情報処理装置にログインした後、前記第１の記憶領域に記憶された前記所定の情報を、前記他の利用者の権限で書込可能であり、かつ前記プリンタドライバに関する各モジュールから利用可能な第２の記憶領域に記憶するステップと、
を実行する、情報共有方法。
【請求項１３】
プリンタドライバがインストールされた情報処理装置に、
前記情報処理装置にログインした一の利用者の権限で取得又は設定した所定の情報を、他の利用者の権限で読込可能な第１の記憶領域に記憶するステップと、
前記他の利用者が前記情報処理装置にログインした後、前記第１の記憶領域に記憶された前記所定の情報を、前記他の利用者の権限で書込可能であり、かつ前記プリンタドライバに関する各モジュールから利用可能な第２の記憶領域に記憶するステップと、
を実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報共有方法、及びプログラムに関する。
【背景技術】
【０００２】
Ｗｉｎｄｏｗｓ（登録商標）２０００からＷｉｎｄｏｗｓ７までのＷｉｎｄｏｗｓＯＳ（Operating System）では、Ｖｅｒｓｉｏｎ３（以降「Ｖ３」と称する）プリンタドライバと呼ばれるプリンタドライバのアーキテクチャが採用されている。また、Ｗｉｎｄｏｗｓ８以降のＷｉｎｄｏｗｓＯＳでは、Ｖ３プリンタドライバに加え、Ｖｅｒｓｉｏｎ４（以降「Ｖ４」と称する）プリンタドライバと呼ばれる新しいプリンタドライバのアーキテクチャが採用されている。
【０００３】
また、Ｖ３プリンタドライバにおいて、一般ユーザ権限において取得した機器情報の日時情報と、管理者権限において取得した機器情報の日時情報とを比較し、日時情報が新しい方の機器情報を表示装置に表示する技術が知られている（例えば、特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
Ｖ３プリンタドライバでは、管理者権限を有さないユーザ（以下、一般ユーザと呼ぶ）の権限で取得又は設定した情報を、他の一般ユーザが利用して、例えば、機器情報等を表示装置に表示することができる。
【０００５】
一方、Ｖ４プリンタドライバでは、一般ユーザを含む全ユーザのストアデバイスアプリから参照、書込が可能な記憶領域がないため、一般ユーザの権限で取得又は設定した機器情報等の情報を、他の一般ユーザのストアデバイスアプリ等から参照することができない。したがって、Ｖ４プリンタドライバでは、一般ユーザの権限で取得又は設定した情報を、他の一般ユーザと共有することには困難を伴っていた。
【０００６】
なお、このような問題は、Ｖ４プリンタドライバに限られず、Ｖ４プリンタドライバと同様の制限を有する他のプリンタドライバにも共通に存在する。
【０００７】
本発明の実施の形態は、上記の問題点に鑑みてなされたものであって、Ｖ４プリンタドライバ、又は同様の制限を有するプリンタドライバにおいて、一般ユーザの権限で取得又は設定した情報を、他の一般ユーザと共有することを容易にする。
【課題を解決するための手段】
【０００８】
上記課題を解決するため、本発明の一実施形態に係る情報処理装置は、プリンタドライバがインストールされた情報処理装置であって、前記情報処理装置にログインした一の利用者の権限で取得又は設定した所定の情報を、他の利用者の権限で読込可能な第１の記憶領域に記憶する情報記憶部と、前記他の利用者が前記情報処理装置にログインした後、前記第１の記憶領域に記憶された前記所定の情報を、前記他の利用者の権限で書込可能であり、かつ前記プリンタドライバに関する各モジュールから利用可能な第２の記憶領域に記憶する情報管理部と、を有する。
【発明の効果】
【０００９】
本発明の一実施形態によれば、Ｖ４プリンタドライバ、又は同様の制限を有するプリンタドライバにおいて、一般ユーザの権限で取得又は設定した情報を、他の一般ユーザと共有することが容易になる。
【図面の簡単な説明】
【００１０】
【図１】一実施形態に係る情報処理システムの一例のシステム構成を示す図である。
【図２】一実施形態に係るクライアント装置及びサーバ装置の一例のハードウェア構成を示す図である。
【図３】一実施形態に係る画像形成装置の一例のハードウェア構成を示す図である。
【図４】クライアント装置の一例のソフトウェア構成を示す図である。
【図５】Ｖ４プリンタドライバ及びストアデバイスアプリがアクセス可能な記憶領域について説明するための図である。
【図６】一実施形態に係るクライアント装置の機能構成の例を示す図である。
【図７】第１の実施形態に係るクライアント装置の処理の例を示すシーケンス図である。
【図８】一実施形態に係る共有情報の記憶、及びコピーについて説明するための図である。
【図９】一実施形態に係るUserPropertyBagの特定方法について説明するための図である。
【図１０】一実施形態に係る機器情報、及びその反映について説明するための図である。
【図１１】第２の実施形態に係るクライアント装置の処理の例を示すシーケンス図（１）である。
【図１２】第２の実施形態に係るクライアント装置の処理の例を示すシーケンス図（２）である。
【図１３】第３の実施形態に係るクライアント装置の機能構成の一例を示す図である。
【図１４】第３の実施形態に係るクライアント装置の処理の一例を示すシーケンス図（１）である。
【図１５】第３の実施形態に係るクライアント装置の処理の一例を示すシーケンス図（２）である。
【図１６】第３の実施形態に係る共有情報の記憶、及びコピーについて説明するための図である。
【図１７】第３の実施形態に係るクライアント装置の処理の別の一例を示すシーケンス図である。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
【００１２】
＜システム構成＞
まず、本実施形態に係る情報処理システム１のシステム構成について、図１を用いて説明する。図１は、一実施形態に係る情報処理システム１の一例のシステム構成を示す図である。
【００１３】
図１に示すように、本実施形態に係る情報処理システム１は、１台以上のクライアント装置１０と、１台以上の画像形成装置２０と、サーバ装置３０とを含み、これら装置はＬＡＮ（Local Area Network）等のネットワークＮを介して互いに通信可能に接続されている。
【００１４】
クライアント装置１０は、例えばＰＣ（パーソナルコンピュータ）、スマートフォン、タブレット端末等である。クライアント装置１０は、例えば、ユーザからの印刷指示を受け付けて、印刷対象データから印刷データを作成した上で、印刷データを画像形成装置２０に送信する。又は、クライアント装置１０は、例えば、ユーザからの印刷指示を受け付けて、印刷対象データをサーバ装置３０に送信する。
【００１５】
なお、印刷対象データとは、例えば、画像データや文書データ等の印刷可能な電子データである。また、印刷データとは、例えば、印刷対象データを、画像形成装置２０が印刷可能なＰＤＬ（Page Description Language）形式に変換した電子データである。
【００１６】
画像形成装置２０は、例えばプリンタ、印刷機能を備えたＭＦＰ（Multifunction Peripheral）等である。画像形成装置２０は、クライアント装置１０又はサーバ装置３０から受信した印刷データを印刷する。
【００１７】
サーバ装置３０は、例えばＰＣ等である。サーバ装置３０は、例えば、クライアント装置１０から受信した印刷対象データから印刷データを作成して、作成した印刷データを画像形成装置２０に送信する。
【００１８】
また、サーバ装置３０は、ファイルサーバとして機能しても良い。すなわち、サーバ装置３０は、例えば、クライアント装置１０から受信した印刷データを記憶しておき、画像形成装置２０からの要求に応じて、記憶した印刷データを要求元の画像形成装置２０に送信しても良い。
【００１９】
なお、以降では、１台以上のクライアント装置１０について、各々を区別するときは、「クライアント装置１０−１」、「クライアント装置１０−２」等と表す。同様に、１台以上の画像形成装置２０について、各々を区別するときは、「画像形成装置２０−１」、「画像形成装置２０−２」等と表す。
【００２０】
＜ハードウェア構成＞
次に、本実施形態に係る情報処理システム１に含まれるクライアント装置１０、画像形成装置２０、及びサーバ装置３０のハードウェア構成について、図２及び図３を用いて説明する。
【００２１】
≪クライアント装置１０及びサーバ装置３０≫
図２は、一実施形態に係るクライアント装置１０及びサーバ装置３０の一例のハードウェア構成を示す図である。なお、クライアント装置１０及びサーバ装置３０は、同様のハードウェア構成を有しているため、以降では、クライアント装置１０のハードウェア構成について説明する。
【００２２】
図２に示すように、本実施形態に係るクライアント装置１０は、入力装置１０１と、表示装置１０２と、外部Ｉ／Ｆ１０３と、ＲＡＭ（Random Access Memory）１０４とを有する。また、クライアント装置１０は、ＲＯＭ（Read Only Memory）１０５と、ＣＰＵ（Central Processing Unit）１０６と、通信Ｉ／Ｆ１０７と、ＨＤＤ（Hard Disk Drive）１０８とを有する。これらのハードウェアは、バスＢで互いに接続されている。
【００２３】
入力装置１０１は、キーボードやマウス、タッチパネル等を含み、ユーザが各操作信号を入力するのに用いられる。表示装置１０２は、ディスプレイ等を含み、クライアント装置１０による処理結果を表示する。なお、入力装置１０１及び表示装置１０２の少なくとも一方は、必要なときにクライアント装置１０に接続して利用する形態であっても良い。
【００２４】
通信Ｉ／Ｆ１０７は、クライアント装置１０をネットワークＮに接続するインタフェースである。クライアント装置１０は、通信Ｉ／Ｆ１０７を介して通信を行うことができる。
【００２５】
ＨＤＤ１０８は、プログラムやデータを格納している不揮発性の記憶装置である。ＨＤＤ１０８に格納されるプログラムやデータには、クライアント装置１０全体を制御する基本ソフトウェアであるＯＳ（Operating System）、ＯＳ上において各種機能を提供するアプリケーションソフトウェア等がある。
【００２６】
なお、クライアント装置１０は、ＨＤＤ１０８に代え、記憶媒体としてフラッシュメモリを用いるドライブ装置（例えばソリッドステートドライブ：ＳＳＤ）を有して良い。また、ＨＤＤ１０８は、格納しているプログラムやデータを所定のファイルシステムやＤＢにより管理している。
【００２７】
外部Ｉ／Ｆ１０３は、外部装置とのインタフェースである。外部装置には、記録媒体１０３ａ等がある。クライアント装置１０は、外部Ｉ／Ｆ１０３を介して記録媒体１０３ａの読み取りや書き込みを行うことができる。記録媒体１０３ａには、フレキシブルディスク、ＣＤ、ＤＶＤ、ＳＤメモリカード、ＵＳＢメモリ等がある。
【００２８】
ＲＯＭ１０５は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ＲＯＭ１０５には、ＯＳ設定、ネットワーク設定等のプログラムやデータ、及びクライアント装置１０の起動時に実行されるＢＩＯＳ（Basic Input/Output System）が格納されている。ＲＡＭ１０４は、プログラムやデータを一時保持する揮発性の半導体メモリである。
【００２９】
ＣＰＵ１０６は、ＲＯＭ１０５やＨＤＤ１０８等の記憶装置からプログラムやデータをＲＡＭ１０４上に読み出し、当該プログラムやデータに基づく処理を実行することで、クライアント装置１０全体の制御やその他の機能を実現する演算装置である。
【００３０】
本実施形態に係るクライアント装置１０及びサーバ装置３０は、図２に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。
【００３１】
≪画像形成装置２０≫
図３は、一実施形態に係る画像形成装置２０の一例のハードウェア構成を示す図である。
【００３２】
図３に示すように、本実施形態に係る画像形成装置２０は、コントローラ２０１と、操作パネル２０２と、外部Ｉ／Ｆ２０３と、通信Ｉ／Ｆ２０４と、プロッタ２０５を有する。また、コントローラ２０１は、ＣＰＵ２１１と、ＲＡＭ２２１と、ＲＯＭ２３１と、ＮＶＲＡＭ２４１と、ＨＤＤ２５１とを有する。
【００３３】
ＲＯＭ２３１は、各種プログラムやデータを格納している不揮発性の半導体メモリである。ＲＡＭ２２１は、プログラムやデータを一時保持する揮発性の半導体メモリである。ＮＶＲＡＭ２４１は、例えば設定情報等を格納している。また、ＨＤＤ２５１は、各種プログラムやデータを格納している不揮発性の記憶装置である。
【００３４】
ＣＰＵ２１１は、ＲＯＭ２３１やＮＶＲＡＭ２４１、ＨＤＤ２５１等からプログラムやデータ、設定情報等をＲＡＭ２２１上に読み出し、当該プログラムやデータに基づく処理を実行することで、画像形成装置２０全体の制御やその他の機能を実現する演算装置である。
【００３５】
操作パネル２０２は、ユーザからの入力を受け付ける入力部と、表示を行う表示部とを有する。外部Ｉ／Ｆ２０３は、外部装置とのインタフェースである。外部装置には、記録媒体２０３ａ等がある。画像形成装置２０は、外部Ｉ／Ｆ２０３を介して記録媒体２０３ａの読み取りや書き込みを行うことができる。なお、記録媒体２０３ａには、例えば、ＩＣカード、フレキシブルディスク、ＣＤ、ＤＶＤ、ＳＤメモリカード、ＵＳＢメモリ等がある。
【００３６】
通信Ｉ／Ｆ２０４は、画像形成装置２０をネットワークＮに接続するインタフェースである。画像形成装置２０は、通信Ｉ／Ｆ２０４を介して通信を行うことができる。プロッタ２０５は、印刷データを印刷する印刷装置である。
【００３７】
本実施形態に係る画像形成装置２０は、図３に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。
【００３８】
＜クライアント装置１０のソフトウェア構成＞
次に、本実施形態に係るクライアント装置１０のソフトウェア構成について、図４を用いて説明する。図４は、クライアント装置１０の一例のソフトウェア構成を示す図である。
【００３９】
図４に示すように、本実施形態に係るクライアント装置１０は、アプリケーション３０１と、ＯＳ３０２と、プリンタドライバ３０３と、ストアデバイスアプリ３０４とを有する。
【００４０】
アプリケーション３０１は、例えば文書作成ソフト、画像閲覧・編集ソフト、ブラウザ等、ユーザの印刷指示に応じて、ＯＳ３０２に印刷の指示（要求）を行うことができるアプリケーションソフトである。アプリケーション３０１には、ストアアプリ３１１と、デスクトップアプリ３２１とが含まれる。
【００４１】
ストアアプリ３１１は、例えば、Ｗｉｎｄｏｗｓ（登録商標）８／ＷｉｎｄｏｗｓＲＴ及びそれ以降のバージョンのＷｉｎｄｏｗｓＯＳにアプリケーションを提供する「Ｗｉｎｄｏｗｓストア」から、入手可能なアプリケーションである。ストアアプリ３１１では、「ストアアプリ  ＵＩ」が用いられる。なお、Ｗｉｎｄｏｗｓ８及びＷｉｎｄｏｗｓ８．１では、ＯＳ３０２によって提供される「Ｍｏｄｅｒｎ  ＵＩ」又は「Ｍｅｔｒｏ  ＵＩ」とも称されるＵＩからストアアプリ３１１が呼び出される。
【００４２】
一方、デスクトップアプリ３２１は、例えば、Ｗｉｎｄｏｗｓ７以前のバージョンのＷｉｎｄｏｗｓＯＳにおいても使用可能なアプリケーションである。
【００４３】
ＯＳ３０２は、Ｗｉｎｄｏｗｓ８／ＷｉｎｄｏｗｓＲＴ及びそれ以降のバージョンのＷｉｎｄｏｗｓＯＳである。
【００４４】
プリンタドライバ３０３は、例えば、Ｖｅｒｓｉｏｎ４プリンタドライバ（以降では、「Ｖ４プリンタドライバ」と表す。）である。Ｖ４プリンタドライバとは、Ｗｉｎｄｏｗｓ８／ＷｉｎｄｏｗｓＲＴから採用されたアーキテクチャに基づくプリンタドライバである。以降では、プリンタドライバ３０３を「Ｖ４プリンタドライバ３０３」とも表す。
【００４５】
なお、Ｗｉｎｄｏｗｓ８以降のＷｉｎｄｏｗｓＯＳでは、Ｗｉｎｄｏｗｓ２０００からＷｉｎｄｏｗｓ７で使用されていたＶｅｒｓｉｏｎ３プリンタドライバ（以降では、「Ｖ３プリンタドライバ」と表す。）に加えて、Ｖ４プリンタドライバも使用可能である。
【００４６】
プリンタドライバ３０３は、拡張設定部３１３と、設定制御部３２３と、描画部３３３とを含む。
【００４７】
拡張設定部３１３は、プリンタ拡張とも称され、デスクトップアプリ３２１から印刷を行う場合に、ベンダ独自の印刷設定画面を表示する。
【００４８】
設定制御部３２３は、禁則スクリプトとも称され、例えば、印刷設定の組み合わせが正当であるか否かを検証する。拡張設定部３１３は、例えば、設定制御部３２３により正当でないと検証された印刷設定の組み合わせを非表示にすること等ができる。
【００４９】
また、設定制御部３２３は、アプリケーション３０１やＯＳ３０２等からの要求に応じて、プリンタドライバ３０３が設定可能な機能の情報を示すＰｒｉｎｔＣａｐａｂｉｌｉｔｙを返信する。更に、設定制御部３２３は、アプリケーション３０１やＯＳ３０２等からの要求に応じて、プリンタドライバ３０３に設定されている各種機能の設定値をＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇから取得し、取得した設定値を示すＰｒｉｎｔＴｉｃｋｅｔを返信する。また、設定制御部３２３は、ＰｒｉｎｔＴｉｃｋｅｔで示された設定値をＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇに保存する。
【００５０】
なお、ＯＳ３０２に返信されたＰｒｉｎｔＣａｐａｂｉｌｉｔｙやＰｒｉｎｔＴｉｃｋｅｔは、例えば、拡張設定部３１３が表示する印刷設定画面における各機能の現在値の表示、選択肢の表示等に利用される。
【００５１】
描画部３３３は、アプリケーション３０１において印刷指示が行われた印刷対象データから印刷データを作成する。
【００５２】
ストアデバイスアプリ３０４は、ストアアプリ３１１から印刷を行う場合に、ベンダ独自の印刷設定画面を表示する。なお、ストアデバイスアプリ３０４は、ストアアプリ３１１と同様に、「Ｗｉｎｄｏｗｓストア」から入手可能なアプリケーションである。
【００５３】
デスクトップアプリ３２１から印刷を行う場合、プリンタドライバ３０３は、拡張設定部３１３により表示された印刷設定画面で設定された設定内容に基づいて、印刷データを作成することができる。一方で、ストアアプリ３１１から印刷を行う場合、プリンタドライバ３０３は、ストアデバイスアプリ３０４により表示された印刷設定画面で設定された設定内容に基づいて、印刷データを作成することができる。
【００５４】
拡張設定部３１３及びストアデバイスアプリ３０４は、ベンダ独自の印刷設定画面を表示するＵＩ部３０５を構成する。
【００５５】
＜Ｖ４プリンタドライバ３０３及びストアデバイスアプリ３０４がアクセス可能な記憶領域＞
次に、Ｖ４プリンタドライバ３０３及びストアデバイスアプリ３０４がアクセス可能な記憶領域について、図５を用いて説明する。図５は、Ｖ４プリンタドライバ３０３及びストアデバイスアプリ３０４がアクセス可能な記憶領域について説明するための図である。
【００５６】
図５に示すように、拡張設定部３１３、設定制御部３２３、描画部３３３、及びストアデバイスアプリ３０４は、ＰｒｏｐｅｒｔｙＢａｇ４００と呼ばれる記憶領域にアクセスすることができる。なお、このような記憶領域へのアクセスは、ＯＳ３０２によって提供されるＡＰＩ（Application Programming Interface）を用いて行うことができる。
【００５７】
図５に示すように、ＰｒｏｐｅｒｔｙＢａｇ４００には、ＤｒｉｖｅｒＰｒｏｐｅｒｔｙＢａｇ４１０と、ＱｕｅｕｅＰｒｏｐｅｒｔｙＢａｇ４２０と、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０とが含まれる。
【００５８】
ＤｒｉｖｅｒＰｒｏｐｅｒｔｙＢａｇ４１０は、Ｖ４プリンタドライバ３０３を作成するときに決定された構成情報等を記憶する記憶領域である。拡張設定部３１３、設定制御部３２３、描画部３３３、及びストアデバイスアプリ３０４は、ＤｒｉｖｅｒＰｒｏｐｅｒｔｙＢａｇ４１０から各種情報の読み出しが可能である。一方で、拡張設定部３１３、設定制御部３２３、描画部３３３、及びストアデバイスアプリ３０４は、ＤｒｉｖｅｒＰｒｏｐｅｒｔｙＢａｇ４１０に対して、情報の書き込みを行うことはできない。
【００５９】
ＱｕｅｕｅＰｒｏｐｅｒｔｙＢａｇ４２０は、論理プリンタ（プリンタアイコン）毎の設定情報等を記憶する記憶領域である。拡張設定部３１３及びストアデバイスアプリ３０４は、ＱｕｅｕｅＰｒｏｐｅｒｔｙＢａｇ４２０に対して、各種情報の読み出し及び書き込みが可能である。また、設定制御部３２３及び描画部３３３は、ＱｕｅｕｅＰｒｏｐｅｒｔｙＢａｇ４２０に対して、各種情報の読み出しが可能である。
【００６０】
なお、論理プリンタとは、例えば、ＯＳ３０２のプリンタフォルダ等にプリンタアイコンとして表示される仮想的なプリンタである。例えば、クライアント装置１０の利用者は、１つの画像形成装置２０に対して、設定情報（例えば、用紙サイズや向き、印刷品質等）が異なる複数の論理プリンタを作成することができる。
【００６１】
ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０は、論理プリンタ毎に、ユーザ毎の設定情報等を記憶する記憶領域である。拡張設定部３１３、設定制御部３２３、及びストアデバイスアプリ３０４は、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０に対して、各種情報の読み出し及び書き込みが可能である。
【００６２】
また、拡張設定部３１３及び描画部３３３は、更に、独自記憶領域５００に対して、各種情報の読み出し及び書き込みが可能である。
【００６３】
独自記憶領域５００は、例えばレジストリやファイル等を用いて実現され、ＰｒｏｐｅｒｔｙＢａｇ４００とは異なる記憶領域である。独自記憶領域５００は、Ｖ４プリンタドライバ３０３を提供するベンダ等によって定義される。
【００６４】
ストアデバイスアプリ３０４は、ＯＳ３０２の課す制約により、ＰｒｏｐｅｒｔｙＢａｇ４００以外の記憶領域に対してアクセスすることはできない。また、設定制御部３２３は、上述したＤｅｖｍｏｄｅＰｒｏｐｅｒｔｙＢａｇ及びＰｒｏｐｅｒｔｙＢａｇ４００以外の記憶領域に対してアクセスすることはできない。すなわち、ストアデバイスアプリ３０４及び設定制御部３２３は、独自記憶領域５００に対して、各種情報の読み出しや書き込み等を行うことができない。
【００６５】
このことは、ストアアプリ３１１に課されている制約と同様であり、例えば、ストアデバイスアプリ３０４及び設定制御部３２３が、ＯＳ３０２が使用するレジストリ等を変更し、ＯＳ３０２の動作に悪影響を与えることを防ぐためである。このような技術は、「サンドボックス」等と称されている。
【００６６】
＜機能構成＞
図６は、一実施形態に係るクライアント装置１０の機能構成の例を示す図である。
【００６７】
クライアント装置（情報処理装置）１０は、ＯＳ３０２、インストーラ６１０、プリンタドライバ３０３、ストアデバイスアプリ３０４ａ、３０４ｂ、及び自動実行プログラム６２０等のプログラムを実行する情報処理装置である。なお、図６に示すＯＳ３０２、プリンタドライバ３０３、及びストアデバイスアプリ３０４は、図４に示すＯＳ３０２、プリンタドライバ３０３、及びストアデバイスアプリ３０４に、それぞれ対応している。
【００６８】
インストーラ６１０は、クライアント装置１０にＶ４プリンタドライバであるプリンタドライバ３０３をインストールし、クライアント装置１０でプリンタドライバ３０３を利用できるようにするインストール用のプログラムである。
【００６９】
（インストーラの機能構成）
クライアント装置１０は、図２のＣＰＵ１０６でインストーラ６１０を実行することにより、図６に示す登録要求部６１１、及びインストール部６１２を実現している。
【００７０】
インストール部６１２は、プリンタドライバ３０３をクライアント装置１０にインストールする処理を実行する。なお、クライアント装置１０にプリンタドライバ３０３をインストールする処理には、管理者の権限が必要である。
【００７１】
登録要求部６１１は、インストール部６１２がインストールしたプリンタドライバ３０３に含まれる登録部６０１に、後述する自動実行プログラム６２０をＯＳ３０２に登録する処理の実行を要求する。
【００７２】
好ましくは、登録要求部６１１は、インストール部６１２が、クライアント装置１０にプリンタドライバ３０３をインストールしたときに、プリンタドライバ３０３に自動実行プログラム６２０の登録を要求する。
【００７３】
自動実行プログラム６２０をＯＳ３０２に登録するためには、管理者の権限が必要である。また、前述したように、インストーラ６１０は、管理者の権限で実行される。したがって、インストーラ６１０が実行されたときに、インストーラ６１０が、プリンタドライバ３０３に自動実行プログラム６２０の登録を要求することにより、自然な流れで自動実行プログラムを、ＯＳ３０２に登録することができる。
【００７４】
なお、インストーラ６１０、及び登録要求部６１１は、本発明に必須の構成ではない。例えば、プリンタドライバ３０３は、クライアント装置１０にインストールされたときに、自動的に、自動実行プログラム６２０をＯＳ３０２に登録するもの等であっても良い。
【００７５】
（プリンタドライバの機能構成）
プリンタドライバ３０３は、Ｖ４プリンタドライバ、又は同様のアーキテクチャを有するプリンタドライバである。ここでは、プリンタドライバ３０３が、Ｖ４プリンタドライバであるものとして、以下の説明を行う。
【００７６】
クライアント装置１０は、例えば、図２のＣＰＵ１０６でプリンタドライバ３０３を実行することにより、拡張設定部３１３、設定制御部３２３、描画部３３３、及び登録部６０１等を実現している。
【００７７】
設定制御部３２３は、前述したように、禁則スクリプトにより、プリンタドライバ３０３の設定情報（例えば、ＰｒｉｎｔＴｉｃｋｅｔ）や、設定能力情報（例えば、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ等）を管理する。
【００７８】
描画部３３３は、前述したように、印刷対象となるデータから、画像形成装置２０で印刷可能な印刷データを作成する。
【００７９】
拡張設定部３１３は、前述したように、図４のデスクトップアプリ３２１から印刷を行う際に表示されるプリンタドライバ３０３の印刷設定画面を表示する。また、本実施形態に係る拡張設定部３１３は、デバイスプロパティ表示部６０２、印刷設定表示部６０３、双方向通信部６０４、及び共有情報記憶部６０５を含む。
【００８０】
双方向通信部６０４は、例えば、ネットワークＮを介して接続された画像形成装置２０と双方向通信を行い、画像形成装置２０の機器構成や、オプション情報等の機器情報（所定の情報の一例）を取得する。なお、双方向通信部６０４が取得する情報には、機器情報以外の情報が含まれていても良い。
【００８１】
共有情報記憶部（情報記憶部）６０５は、双方向通信部６０４が取得した機器情報等の情報（所定の情報）を、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０、及び前述した独自記憶領域５００に記憶する。
【００８２】
なお、共有情報記憶部６０５が、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０、及び独自記憶領域５００に記憶する共有情報は、双方向通信部６０４が取得した機器情報等の情報以外の情報であっても良い。例えば、共有情報は、ユーザが設定した印刷設定情報等であっても良いし、ユーザが設定したアカウント情報等であっても良い。さらに、共有情報は、他のユーザと共有したい任意の情報であって良い。
【００８３】
独自記憶領域５００は、クライアント装置１０にログインした全てのユーザからデータの読み書きが可能なレジストリ、ファイル、ディレクトリ等であり、他の利用者の権限で読込可能な第１の記憶領域の一例である。
【００８４】
ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０は、前述したように、クライアント装置１０にとログインするユーザ毎の管理領域（記憶領域）である。図６において、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａは、ユーザＡ（一の利用者）に対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０であるものとする。また、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂは、ユーザＢ（他の利用者）に対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０であるものとする。
【００８５】
例えば、ユーザＡがクライアント装置１０にログインしているときに、双方向通信部６０４が取得した機器情報等の情報は、共有情報記憶部６０５により、独自記憶領域５００、及びＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに記憶される。
【００８６】
デバイスプロパティ表示部６０２は、画像形成装置２０のオプション情報や、管理者のみが設定可能な設定情報等、ドキュメントの印刷毎に設定しない設定情報を参照、設定するための表示画面を、表示装置１０２等の表示部に表示させる。なお、デバイスプロパティ表示部６０２が表示する表示画面には、双方向通信部６０４が取得した機器情報等が含まれる。
【００８７】
印刷設定表示部６０３は、ユーザがドキュメントを印刷する際に、印刷の設定（例えばカラー／モノクロ、片面／両面、用紙サイズ等）を設定するための印刷設定画面を、表示装置１０２等の表示部に表示させる。
【００８８】
（自動実行プログラムの機能構成）
自動実行プログラム６２０は、ＯＳ３０２によって、ＯＳ３０２に登録されたプログラムの実行タイミング（例えば、起動時等）に、自動的に実行されるプログラムである。
【００８９】
クライアント装置１０は、図２のＣＰＵ１０６で自動実行プログラム６２０を実行することにより、共有情報管理部６２１を実現している。
【００９０】
共有情報管理部（情報管理部）６２１は、クライアント装置１０に、ユーザＡとは異なるユーザＢがログインした後、独自記憶領域５００に記憶された機器情報等の情報（所定の情報）を、ユーザＢに対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂに記憶する。なお、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂは、ユーザＢ（他の利用者）の権限で書込可能であり、かつプリンタドライバ３０３に関する各モジュールから利用可能な第２の記憶領域の一例である。
【００９１】
（ストアデバイスアプリの機能構成）
図６において、ユーザＡに対応するストアデバイスアプリ３０４を、ストアデバイスアプリ３０４ａとし、ユーザＢに対応するストアデバイスアプリ３０４を、ストアデバイスアプリ３０４ｂとして、以下の説明を行う。また、印刷設定表示部６３０ａ、６３０ｂのうち、任意の印刷設定表示部を示す場合、「印刷設定表示部６３０」を用いる。
【００９２】
印刷設定表示部６３０は、ストアアプリ３１１から印刷を行う場合に、ベンダ独自の印刷設定画面を、例えば、表示装置１０２等の表示部に表示させる。
【００９３】
例えば、ユーザＡに対応するストアデバイスアプリ３０４ａの印刷設定表示部６３０ａは、共有情報記憶部６０５がＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに記憶した、画像形成装置２０の機器情報等の情報を反映させた印刷設定画面を表示させる。
【００９４】
一方、ユーザＢに対応するストアデバイスアプリ３０４ｂの印刷設定表示部６３０ｂは、共有情報管理部６２１が、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂに記憶した、画像形成装置２０の機器情報等を反映させた印刷設定画面を表示させる。
【００９５】
なお、前述したように、共有情報記憶部６０５が、独自記憶領域５００に記憶する情報は、画像形成装置２０の機器情報に限られず、他のユーザと共有する機器情報以外の共有情報であっても良い。
【００９６】
例えば、クライアント装置１０にログインする際には別々のアカウントでログインする場合でも、印刷時に利用するユーザＩＤ、及びパスワードは、アカウント間で共通のユーザＩＤ、パスワードを利用したい場合がある。このような場合、画像形成装置２０の機器情報に代えて（又は加えて）、ユーザＡが設定した印刷用のユーザＩＤ、パスワードを共有情報として、ユーザＢと共有するものであっても良い。
【００９７】
＜処理の流れ＞
続いて、本実施形態に係るクライアント装置１０が実行する情報共有方法の処理の流れについて説明する。
【００９８】
［第１の実施形態］
図７は、第１の実施形態に係るクライアント装置の処理の例を示すシーケンス図である。この処理は、クライアント装置１０が実行する処理の一例を示している。
【００９９】
ステップＳ７０１〜Ｓ７０３において、管理者の権限を有するユーザにより、クライアント装置１０にプリンタドライバ３０３がインストールされるものとする。
【０１００】
例えば、ステップＳ７０１において、インストーラ６１０のインストール部６１２は、管理者の権限を有するユーザのインストール操作に応じて、クライアント装置１０にプリンタドライバ３０３をインストールする。この処理により、クライアント装置１０でプリンタドライバ３０３を利用することができるようになる。
【０１０１】
ステップＳ７０２において、インストーラ６１０の登録要求部６１１は、プリンタドライバ３０３の登録部６０１に、自動実行プログラム６２０の登録を要求する。
【０１０２】
ステップＳ７０３において、プリンタドライバ３０３の登録部６０１は、インストーラ６１０からの要求に応じて、ＯＳ３０２に自動実行プログラム６２０を登録する。
【０１０３】
このとき、登録部６０１は、クライアント装置１０にログインする全てのユーザがログインしたときに、自動実行プログラム６２０が自動的に実行されるように、ＯＳ３０２に自動実行プログラム６２０を登録する。また、登録部６０１は、自動実行プログラム６２０の実行時に、現在のプリンタアイコン名（論理プリンタ名）を、ＯＳ３０２に登録する。
【０１０４】
なお、インストーラ６１０の登録要求部６１１の要求により、プリンタドライバ３０３の登録部６０１が自動実行プログラム６２０をＯＳ３０２に登録する処理は、一例である。例えば、プリンタドライバ３０３の登録部６０１は、拡張設定部３１３が、印刷設定画面を表示するとき等に、ユーザの権限を確認し、ユーザが管理者の権限を有している場合に、自動実行プログラム６２０をＯＳ３０２に登録するもの等であっても良い。
【０１０５】
ステップＳ７０４において、管理者の権限を有していない一般ユーザであるユーザＡが、プリンタドライバ３０３のデバイスプロパティを表示するための操作を行うものとする。
【０１０６】
ステップＳ７０５において、プリンタドライバ３０３のデバイスプロパティ表示部６０２は、双方向通信部６０４を用いて、画像形成装置２０から機器情報等の情報を取得し、デバイスプロパティを表示する表示画面を、表示装置１０２等の表示部に表示させる。
【０１０７】
ステップＳ７０６において、プリンタドライバ３０３の共有情報記憶部６０５は、双方向通信部６０４が取得した機器情報等の共有情報を、独自記憶領域５００、及びＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに記憶する。
【０１０８】
図８は、一実施形態に係る共有情報の記憶、及びコピーについて説明するための図である。ここでは、ユーザＡ、及びユーザＢが、管理者の権限を有していない一般ユーザであるものとする。
【０１０９】
図８に示すように、ユーザＡは、ユーザＡが利用可能な記憶領域８０１に含まれるＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａ、及び独自記憶領域５００を利用することができる。このうち、独自記憶領域５００は、全ユーザが利用可能な記憶領域８０３に含まれるので、ユーザＢも利用することができる。一方、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａは、ユーザＢが利用可能な記憶領域８０２に含まれないので、ユーザＢは利用することができない。
【０１１０】
そこで、本実施形態に係る共有情報記憶部６０５は、双方向通信部６０４が取得した機器情報等の共有情報を、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａと、全ユーザが利用可能な記憶領域８０３にある独自記憶領域５００に記憶する。
【０１１１】
図７に戻り、シーケンス図の説明を続ける。
【０１１２】
ステップＳ７０７において、管理者の権限を有していない一般ユーザであるユーザＢが、クライアント装置１０にログインするものとする。
【０１１３】
ステップＳ７０８において、ＯＳ３０２は、ユーザＢのログインに応じて、ステップＳ７０３で登録された自動実行プログラム６２０を実行させる。
【０１１４】
ステップＳ７０９において、自動実行プログラム６２０の共有情報管理部６２１は、ユーザＢに対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂの場所を特定する。
【０１１５】
図９は、一実施形態に係るＵｓｅｒＰｒｏｐｅｒｔｙＢａｇの特定方法について説明するための図である。
【０１１６】
ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０の保存場所はレジストリであり、共有情報管理部６２１は、ステップＳ７０３で登録されたプリンタアイコン名を利用して、ユーザＢに対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂの保存場所を特定することができる。
【０１１７】
例えば、共有情報管理部６２１は、ステップＳ７０３で登録されたプリンタアイコン名を利用して、
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers\(プリンタアイコン名)\ PrintQueueV4DriverDirectory
の値を取得する。この値は、例えば、プリンタドライバ３０３がインストールされたとき等に、プリンタアイコン毎に決定される。
【０１１８】
図９（ａ）は、ＯＳ３０２によって提供されるレジストリエディタ９００で、プリンタアイコン「ＸＸＸＸＸ ＲＰＣＳ Ｖ４ ＳＰ １６１０ ＪＰＮ」という名前のプリンタアイコン９１１を選択した状態を示している。この例では、「ＰｒｉｎｔＱｕｅｕｅＶ４ＤｒｉｖｅｒＤｉｒｅｃｔｒｙ」９１２に対応する値は、「E51ADE16-5439-4008-B859-76A41752FD2F」となっている。共有情報管理部６２１は、例えば、この値（ＧＵＩＤ）を取得する。
【０１１９】
続いて、共有情報管理部６２１は、取得した値（ＧＵＩＤ）を用いてユーザＢに対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂの場所を特定する。ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂの場所は、取得した値（ＧＵＩＤ）を用いて、
HKEY_CURRENT_USER\Software\Classes\Local Settings\Printers\PropertyBags\
（PrintQueueV4DriverDirectoryの値）
で決定される。
【０１２０】
つまり、今回の例では、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂの場所は、
HKEY_CURRENT_USER\Software\Classes\Local Settings\Printers\PropertyBags\ E51ADE16-5439-4008-B859-76A41752FD2F
で、特定することができる。
【０１２１】
図９（ｂ）は、ＯＳ３０２によって提供されるレジストリエディタ９００で、特定したＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂの場所９２１を選択した状態を示している。この例では、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂには、「ｂｉｄｉ＿ｉｎｆｏ」といる名前９２２に対応付けて、双方向通信部６０４が取得した機器情報９２３が記憶されている。
【０１２２】
再び図７に戻り、シーケンス図の説明を続ける。
【０１２３】
ステップＳ７１０において、自動実行プログラム６２０の共有情報管理部６２１は、ステップＳ７０６で独自記憶領域５００に記憶された機器情報等の共有情報を、ステップＳ７０８で特定したＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂにコピーする。
【０１２４】
例えば、図８において、共有情報管理部６２１は、全ユーザが利用可能な記憶領域８０３に含まれる独自記憶領域５００に記憶された機器情報等の共有情報を読出し、読出した共有情報を、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂに記憶する。
【０１２５】
これにより、例えば、独自記憶領域５００の情報を利用できない、ユーザＢに対応するストアデバイスアプリ３０４ｂも、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂにコピーされた画像形成装置２０の機器情報等の情報を利用することができる。
【０１２６】
ここで、再び図７に戻り、シーケンス図の説明をさらに続ける。
【０１２７】
ステップＳ７１１において、管理者の権限を有していない一般ユーザであるユーザＢが、ストアデバイスアプリ３０４ｂを用いて、印刷設定画面を表示させるものとする。
【０１２８】
ステップＳ７１２において、ストアデバイスアプリ３０４ｂの印刷設定表示部６３０ｂは、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂにコピーされた、画像形成装置２０の機器情報等の共有情報を取得する。
【０１２９】
ステップＳ７１３において、ストアデバイスアプリ３０４ｂの印刷設定表示部６３０ｂは、取得した共有情報に含まれる機器情報を用いて、印刷設定画面を、表示装置１０２等の表示部に表示させる。
【０１３０】
図１０は、一実施形態に係る機器情報、及びその反映について説明するための図である。
【０１３１】
図１０（ａ）は、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂに記憶された機器情報の一例のイメージを示している。図１０（ａ）に示す機器情報は、図１０（ｂ）に示すような情報を示している。
【０１３２】
例えば、「"ｔｒａｙ１"："Ａ４"」の記述は、トレイ１の印刷用紙サイズが「Ａ４」であることを示しており、「"ｔｒａｙ２"："Ｂ５"」の記述は、トレイ２の印刷用紙サイズが「Ｂ５」であることを示している。同様に、「"ｔｒａｙ３"："Ａ４"」の記述は、トレイ３の印刷用紙サイズが「Ａ４」であることを示している。
【０１３３】
また、「"ｄｕｐｌｅｘ＿ｆｕｎｃｔｉｏｎｔ"："ｏｎ"」の記述は、両面印刷が「可」であることを示している。また、「"ｓｔａｐｌｅ＿ｆｕｎｃｔｉｏｎｔ"："ｏｎ"」の記述は、ステープルが「可」であることを示している。さらに、「"ｐｕｎｃｈ＿ｆｕｎｃｔｉｏｎｔ"："ｏｆｆ"」の記述は、パンチが「不可」であることを示している。
【０１３４】
図１０（ｃ）は、ストアデバイスアプリ３０４ｂの印刷設定表示部６３０ｂが、例えば、図１０（ａ）に示すような機器情報を反映させて表示させる印刷設定画面の一例のイメージを示している。
【０１３５】
例えば、印刷設定表示部６３０ｂは、図１０（ｃ）の「印刷用紙サイズ」の項目において、画像形成装置２０にセットされている用紙サイズ「Ａ４」、「Ｂ５」のみを選択可能に表示させる。
【０１３６】
また、印刷設定表示部６３０ｂは、画像形成装置２０で利用可能である「両面印刷」、及び「ステープル」の設定項目について、選択可能な選択肢を表示させる。
【０１３７】
さらに、印刷設定表示部６３０ｂは、画像形成装置２０で利用できない「パンチ」の設定項目を「しない」に固定し、「する」を選択できないようにする。或いは、印刷設定表示部６３０ｂは、画像形成装置２０で利用できない「パンチ」の設定項目を表示させないものであっても良い。
【０１３８】
このように、本実施形態によれば、Ｖ４プリンタドライバ、又は同様の制限を有するプリンタドライバにおいて、一般ユーザの権限で取得又は設定した情報を、他の一般ユーザと共有することが容易になる。
【０１３９】
これにより、例えば、ＰｒｏｐｅｒｔｙＢａｇ４００以外の記憶領域へのアクセスが制限されるストアデバイスアプリ３０４、設定制御部３２３等においても、他のユーザが取得した画像形成装置２０の機器情報等の共有情報を利用することができるようになる。
【０１４０】
［第２の実施形態］
第１の実施形態では、ユーザがクライアント装置１０にログインする際に、自動実行プログラム６２０が、独自記憶領域５００に記憶された共有情報を、ユーザに対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０にコピーする場合の処理の例について説明した。
【０１４１】
この場合、例えば、一人のユーザが複数のアカウントでクライアント装置１０にログインしている場合や、クライアント装置１０に複数のユーザがログインしている場合等には、ログイン中の別のユーザに共有情報が反映されない場合がある。
【０１４２】
第２の実施形態では、このような場合であっても、共有情報を他のユーザと共有できるようにする場合の処理の例について説明する。
【０１４３】
＜機能構成＞
第２の実施形態に係るクライアント装置１０の機能構成は、図６に示す第１の実施形態に係るクライアント装置１０の機能構成と同様である。
【０１４４】
ただし、第１の実施形態に係る自動実行プログラム６２０は、ユーザがクライアント装置１０にログインしたときに、所定の処理を実行していた。一方、第２の実施形態に係る自動実行プログラム６２０は、ユーザがログイン中に、定期的に所定の処理を繰り返し実行するものとする。
【０１４５】
＜処理の流れ＞
図１１、１２は、第２の実施形態に係るクライアント装置の処理の例を示すシーケンス図である。なお、ここでは、図６に示す第１の実施形態に係るクライアント装置の処理と同様の処理内容に対する詳細な説明は省略する。
【０１４６】
ステップＳ１１０１において、管理者の権限を有するユーザにより、クライアント装置１０にプリンタドライバ３０３がインストールされるものとする。
【０１４７】
ステップＳ１１０２において、インストーラ６１０の登録要求部６１１は、プリンタドライバ３０３の登録部６０１に、自動実行プログラム６２０の登録を要求する。
【０１４８】
ステップＳ１１０３において、プリンタドライバ３０３の登録部６０１は、ＯＳ３０２に自動実行プログラム６２０を登録する。
【０１４９】
なお、前述したように、第２の実施形態では、自動実行プログラム６２０は、定期的に、独自記憶領域５００に記憶された共有情報を、各ユーザに対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０にコピーする所定の処理を、繰り返し実行するものとする。
【０１５０】
ステップＳ１１０４、Ｓ１１０５において、ユーザＡ、及びユーザＢが、それぞれ、クライアント装置１０にログインするものとする。これにより、クライアント装置１０には、ユーザＡとユーザＢとが同時にログインしている状態となる。
【０１５１】
ステップＳ１１０６において、管理者の権限を有していない一般ユーザであるユーザＡが、プリンタドライバ３０３のデバイスプロパティを表示するための操作を行うものとする。
【０１５２】
ステップＳ１１０７において、プリンタドライバ３０３のデバイスプロパティ表示部６０２は、双方向通信部６０４を用いて画像形成装置２０から機器情報等の情報を取得し、デバイスプロパティを表示する表示画面を、表示装置１０２等の表示部に表示させる。
【０１５３】
ステップＳ１１０８において、プリンタドライバ３０３の共有情報記憶部６０５は、双方向通信部６０４が取得した機器情報等の情報を、独自記憶領域５００、及びＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに記憶する。
【０１５４】
ステップＳ１１０９において、ＯＳ３０２は、ユーザＢの環境で、自動実行プログラム６２０を実行させる。この処理は、例えば、ユーザＢが、クライアント装置１０にログイン中、所定の時間間隔（例えば、数秒〜数分間隔）で繰り返し実行される。
【０１５５】
ステップＳ１１１０において、自動実行プログラム６２０の共有情報管理部６２１は、ユーザＢに対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂの場所を特定する。
【０１５６】
ステップＳ１１１１において、自動実行プログラム６２０の共有情報管理部６２１は、独自記憶領域５００に記憶された機器情報等の共有情報を、ステップＳ１１１０で特定したＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂにコピーする。
【０１５７】
ステップＳ１１０９〜Ｓ１１１１の処理が、所定の時間間隔で繰り返し実行されることにより、ユーザＢがログイン中であっても、独自記憶領域５００に記憶された共有情報が、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂに、自動的にコピーされる。
【０１５８】
続いて、図１２のステップＳ１１１２において、管理者の権限を有していない一般ユーザであるユーザＢが、ストアデバイスアプリ３０４ｂを用いて、印刷設定画面を表示させるものとする。
【０１５９】
ステップＳ１１１３において、ストアデバイスアプリ３０４ｂの印刷設定表示部６３０ｂは、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂにコピーされた、画像形成装置２０の機器情報等の共有情報を取得する。
【０１６０】
ステップＳ１１１４において、ストアデバイスアプリ３０４ｂの印刷設定表示部６３０ｂは、取得した共有情報に含まれる機器情報を用いて、印刷設定画面を、表示装置１０２等の表示部に表示させる。
【０１６１】
ステップＳ１１１５において、ＯＳ３０２は、ユーザＡの環境で、自動実行プログラム６２０を実行させる。この処理は、例えば、ユーザＡが、クライアント装置１０にログイン中、所定の時間間隔で繰り返し実行される。
【０１６２】
ステップＳ１１１６において、自動実行プログラム６２０の共有情報管理部６２１は、ユーザＡに対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａの場所を特定する。
【０１６３】
ステップＳ１１１７において、自動実行プログラム６２０の共有情報管理部６２１は、独自記憶領域５００に記憶された機器情報等の共有情報を、ステップＳ１１１６で特定したＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａにコピーする。
【０１６４】
ステップＳ１１１５〜Ｓ１１１７の処理が、所定の時間間隔で繰り返し実行されることにより、ユーザＡがログイン中であっても、独自記憶領域５００に記憶された共有情報が、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに、自動的にコピーされる。
【０１６５】
上記の処理により、一人のユーザが複数のアカウントでクライアント装置１０にログインしている場合や、クライアント装置１０に複数のユーザがログインしている場合等であっても、ログイン中の別のユーザに、共有情報が反映されるようになる。
【０１６６】
［第３の実施形態］
第１、２の実施形態により、例えば、ユーザＡが、拡張設定部３１３を用いて、一般ユーザの権限で取得又は設定した情報を、他の一般ユーザであるユーザＢと容易に共有することができるようになる。
【０１６７】
第３の実施形態では、例えば、ユーザＡが、ストアデバイスアプリ３０４を用いて、一般ユーザの権限で取得又は設定した情報を、他の一般ユーザであるユーザＢと共有できるようにする場合の例について説明する。
【０１６８】
＜機能構成＞
図１３は、第３の実施形態に係るクライアント装置の機能構成の一例を示す図である。図１３に示すように、第３の実施形態に係るクライアント装置１０は、図６に示す一実施形態に係るクライアント装置１０の機能構成に加えて、双方向通信部１３０１、情報格納部１３０２、共有情報記憶部１３０３、及び共有情報記憶部１３０４等を有する。
【０１６９】
なお、図１３において、ストアデバイスアプリ３０４ｂは、例えば、ストアデバイスアプリ３０４ａと同様の機能構成を有しているものとする。また、第３の実施形態に係るクライアント装置１０は、図６に示す一実施形態に係るクライアント装置１０の機能構成に含まれる双方向通信部６０４、及び共有情報記憶部６０５を有していても良い。
【０１７０】
双方向通信部６０４は、例えば、ＣＰＵ１０６で実行されるストアデバイスアプリ３０４によって実現され、ネットワークＮを介して接続された画像形成装置２０と双方向通信を行い、画像形成装置２０の機器構成や、オプション情報等の機器情報を取得する。なお、機器情報は、他のユーザと共有する共有情報の一例である。
【０１７１】
情報格納部１３０２は、例えば、ＣＰＵ１０６で実行されるストアデバイスアプリ３０４によって実現され、双方向通信部６０４が取得した機器情報等の共有情報を、ユーザに対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０に記憶する。例えば、ストアデバイスアプリ３０４ａの情報格納部１３０２は、図１３に示すように、ユーザＡに対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに、双方向通信部６０４が取得した機器情報等の共有情報を記憶する。
【０１７２】
共有情報記憶部１３０３は、例えば、ＣＰＵ１０６で実行されるプリンタドライバ３０３によって実現される描画部３３３に含まれる。共有情報記憶部１３０３は、例えば、ユーザＡが印刷を実行するときに、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに記憶された機器情報等の共有情報を取得し、取得した共有情報を独自記憶領域５００に記憶する（コピーする）。
【０１７３】
共有情報記憶部１３０４は、例えば、ＣＰＵ１０６で実行されるプリンタドライバ３０３によって実現される拡張設定部３１３に含まれる。共有情報記憶部１３０４は、例えば、ユーザＡが拡張設定部３１３によって提供される印刷設定画面を表示したときに、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに記憶された機器情報等の共有情報を取得し、取得した共有情報を独自記憶領域５００に記憶する。
【０１７４】
ここで、共有情報記憶部１３０３、及び共有情報記憶部１３０４は、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０を介して、一の利用者の権限で取得又は設定した所定の情報を取得し、取得した所定の情報を第１の記憶領域に記憶する情報記憶部の一例である。
【０１７５】
なお、第３の実施形態に係るクライアント装置１０の他の機能構成は、第１、２の実施形態に係るクライアント装置１０の機能構成と同様で良い。
【０１７６】
＜処理の流れ＞
続いて、第３の実施形態に係る情報共有方法の処理の流れについて説明する。
【０１７７】
（クライアント装置の処理１）
図１４、１５は、第３の実施形態に係るクライアント装置の処理の一例を示すシーケンス図である。なお、図１４に示す処理の開始時点において、例えば、図７のステップＳ７０１〜Ｓ７０３の処理が実行済であるものとする。また、ここでは、第１、２の実施形態と同様の処理に対する詳細な説明は省略する。
【０１７８】
ステップＳ１４０１において、管理者の権限を持たない一般ユーザであるユーザＡが、ストアデバイスアプリ３０４ａが提供する印刷設定画面を表示する操作を行うものとする。
【０１７９】
ステップＳ１４０２において、ストアデバイスアプリ３０４ａの双方向通信部１３０１は、画像形成装置２０と双方向通信を行い、画像形成装置２０の機器構成や、オプション情報等の機器情報を取得する。
【０１８０】
ステップＳ１４０３において、ストアデバイスアプリ３０４ａの情報格納部１３０２は、双方向通信部６０４が取得した機器情報等の共有情報を、ユーザＡに対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに記憶する。
【０１８１】
ステップＳ１４０４において、ストアデバイスアプリ３０４ａの印刷設定表示部６３０は、例えば、双方向通信部６０４が取得した機器情報等を用いて、印刷設定画面を表示する。
【０１８２】
ここで、ユーザＡは、表示された印刷設定画面により印刷設定を確認、又は変更し、ステップＳ１４０５において、ユーザＡが、印刷操作を行うものとする。
【０１８３】
ステップＳ１４０６において、ＯＳ３０２は、ユーザＡによる印刷操作を受け付けると、描画部３３３に印刷を指示する。
【０１８４】
ステップＳ１４０７において、描画部３３３の共有情報記憶部１３０３は、ステップＳ１４０３でユーザＡのＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに記憶された機器情報等の共有情報を取得する。
【０１８５】
ステップＳ１４０８において、描画部３３３の共有情報記憶部１３０３は、取得した機器情報等の共有情報を独自記憶領域５００に記憶する（コピーする）。
【０１８６】
ステップＳ１４０９において、描画部３３３は、ＯＳ３０２から指示された印刷処理を実行する。
このように、描画部３３３の共有情報記憶部１３０３は、プリンタドライバ３０３が印刷を実行するときに、ユーザに対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０を介して共有情報を取得し、取得した共有情報を独自記憶領域５００に記憶する。
【０１８７】
続いて、図１５のステップＳ１４１０において、ユーザＢがＯＳ３０２（クライアント装置１０）にログインするものとする。
【０１８８】
ステップＳ１４１１において、ユーザＢのログインを受け付けたＯＳ３０２は、自動実行プログラム６２０を実行させる。
【０１８９】
ステップＳ１４１２において、自動実行プログラム６２０の共有情報管理部６２１は、ログインしたユーザＢのＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂの場所を、例えば、図９を用いて説明したようにして、特定する。
【０１９０】
ステップＳ１４１３において、自動実行プログラム６２０の共有情報管理部６２１は、独自記憶領域５００に記憶された機器情報等の共有情報を、ユーザＢのＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂに記憶する（コピーする）。
【０１９１】
この状態で、例えば、ステップＳ１４１４において、ユーザＢがストアデバイスアプリ３０４ｂを用いて、印刷設定画面を表示する操作を行うものとする。
【０１９２】
ステップＳ１４１５において、ストアデバイスアプリ３０４ｂの印刷設定表示部６３０は、ユーザＢに対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂから機器情報等の共有情報を取得する。
【０１９３】
例えば、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂに画像形成装置２０の機器情報等が記憶されている場合、ストアデバイスアプリ３０４ｂの印刷設定表示部６３０は、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂから機器情報等を取得する。一方、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂに画像形成装置２０の機器情報等が記憶されていない場合、ストアデバイスアプリ３０４ｂの印刷設定表示部６３０は、双方向通信部１３０１を用いて、画像形成装置２０から機器情報等を取得する。
【０１９４】
ステップＳ１４１６において、ストアデバイスアプリ３０４ｂの印刷設定表示部６３０は、取得した機器情報等の共有情報を用いて、印刷設定画面を表示する。
【０１９５】
図１６は、第３の実施形態に係る共有情報の記憶、及びコピーについて説明するための図である。ここでは、ユーザＡ、及びユーザＢが、管理者の権限を有していない一般ユーザであるものとする。
【０１９６】
図８で前述したように、ユーザＡは、ユーザＡが利用可能な記憶領域８０１に含まれるＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａ、及び独自記憶領域５００を利用することができる。また、ユーザＢは、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂ、及び独自記憶領域５００を利用することができる。
【０１９７】
ただし、ユーザＡに対応するストアデバイスアプリ３０４ａは、図５で説明したように、独自記憶領域５００に対して、各種情報の読み出しや書き込み等を行うことができない。そこで、ストアデバイスアプリ３０４ａの情報格納部１３０２は、図１５に示すように、他のユーザと共有する共有情報（例えば、機器情報等）を、ユーザＡに対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに記憶する。
【０１９８】
また、共有情報記憶部１３０３、１３０４は、所定のタイミングで、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに記憶された共有情報を取得し、独自記憶領域５００に記憶する（コピーする）。
【０１９９】
例えば、描画部３３３に含まれる共有情報記憶部１３０３は、図１４のステップＳ１４０７、Ｓ１４０８に示すように、ユーザＡが印刷を行うとき等に、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに記憶された共有情報を独自記憶領域５００にコピーする。
【０２００】
また、拡張設定部３１３に含まれる共有情報記憶部１３０４は、図１６で後述するように、ユーザＡが拡張設定部３１３を用いて印刷設定画面を表示するとき等に、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに記憶された共有情報を独自記憶領域５００にコピーする。
【０２０１】
これにより、共有情報管理部６２１は、第１、２の実施形態と同様にして、独自記憶領域５００に記憶された機器情報等の共有情報を読出し、読出した共有情報をＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ｂ等に記憶する（コピーする）ことができるようになる。
【０２０２】
図１７は、第３の実施形態に係るクライアント装置の処理の別の一例を示す図である。この処理は、拡張設定部３１３に含まれる共有情報記憶部１３０４が、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに記憶された共有情報を独自記憶領域５００にコピーする処理の例を示している。
【０２０３】
なお、図１７のステップＳ１４０１〜Ｓ１４０４の処理は、図１４で説明したステップＳ１４０１〜Ｓ１４０４の処理と同様なので、ここでは説明を省略する。
【０２０４】
ステップＳ１７０１において、ユーザＡが、拡張設定部３１３を用いて印刷設定画面を表示する操作を行うものとする。
【０２０５】
ステップＳ１７０２において、拡張設定部３１３の共有情報記憶部１３０４は、ステップＳ１４０３において、ユーザＡのＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０ａに記憶された機器情報等の共有情報を取得する。
【０２０６】
ステップＳ１７０３において、拡張設定部３１３の共有情報記憶部１３０４は、取得した機器情報等の共有情報を独自記憶領域５００に記憶する（コピーする）。
【０２０７】
ステップＳ１７０４において、拡張設定部３１３の印刷設定表示部６０３は、印刷の設定等を行う印刷設定画面を表示させる。
【０２０８】
この処理に続いて、クライアント装置１０は、例えば、図１５に示すステップＳ１４１０〜１４１６の処理を、そのまま実行することができる。
【０２０９】
このように、拡張設定部３１３の共有情報記憶部１３０４は、プリンタドライバ３０３が印刷設定画面を表示するとき等に、ユーザに対応するＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０を介して所定の情報を取得し、独自記憶領域５００に記憶する（コピーする）。
【０２１０】
以上、上記の各処理により、例えば、ユーザＡが、ストアデバイスアプリ３０４を用いて、一般ユーザの権限で取得又は設定した情報を、他の一般ユーザであるユーザＢと容易に共有することができるようになる。
【０２１１】
［その他の実施形態］
第１〜３の実施形態に示す情報処理システム１の構成は一例であり、情報処理システム１は、様々なシステム構成が可能である。
【０２１２】
例えば、図６、１３に示すクライアント装置１０は、本発明に係るプリンタドライバ３０３がインストールされた情報処理装置の一例である。プリンタドライバ３０３がインストールされた情報処理装置は、例えば、図１のサーバ装置３０であっても良い。この場合、サーバ装置３０は、例えば、図６、１３に示すクライアント装置１０と同様の機能構成を有し、クライアント装置１０と同様の処理を実行すれば良い。
【０２１３】
また、第１の実施形態と第２の実施形態とは、組合せて実施することができる。この場合、自動実行プログラム６２０は、ユーザがログインしたときに加えて、所定の時間間隔で、独自記憶領域５００に記憶された共有情報を、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０にコピーする所定の処理を繰り返し実行する。
【０２１４】
さらに、自動実行プログラム６２０は、例えば、ユーザによる所定の操作に応じて、独自記憶領域５００に記憶された共有情報を、ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０にコピーする所定の処理を実行するものであっても良い。これにより、ユーザは、必要なときに、他のユーザが取得した機器情報を利用することができるようになる。
【０２１５】
さらにまた、自動実行プログラム６２０は、共有情報記憶部６０５が独自記憶領域５００に共有情報を記憶したとき等に、独自記憶領域５００に記憶された共有情報をＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ４３０にコピーする所定の処理を実行するものであっても良い。この場合、共有情報記憶部６０５は、独自記憶領域５００に共有情報を記憶したことを、自動実行プログラム６２０に通知することが望ましい。
【０２１６】
なお、第３の実施形態は、第１、２の実施形態と組合せて実施することができる。例えば、図１３に示す第３の実施形態に係るクライアント装置１０の機能構成において、拡張設定部３１３には、図６に示す双方向通信部６０４、及び共有情報記憶部６０５が含まれていても良い。これにより、ユーザが、拡張設定部３１３を用いて機器情報等を取得した場合には、第１、２の実施形態を適用し、ユーザが、ストアデバイスアプリ３０４を用いて機器情報等を取得した場合には、第３の実施形態を適用することができる。
【０２１７】
以上、本発明の各実施形態によれば、Ｖ４プリンタドライバ、又は同様の制限を有するプリンタドライバ３０３において、一般ユーザの権限で取得又は設定した情報を、他の一般ユーザと共有することが容易になる。
【符号の説明】
【０２１８】
１          情報処理システム
１０        クライアント装置（情報処理装置）
２０        画像形成装置
３０        サーバ装置（情報処理装置の別の一例）
３０１      アプリケーション
３０２      ＯＳ
３０３      プリンタドライバ
３０４      ストアデバイスアプリ
３０５      ＵＩ部
３１１      ストアアプリ
３１３      拡張設定部
３２１      デスクトップアプリ
３２３      設定制御部
３３３      描画部
４３０      ＵｓｅｒＰｒｏｐｅｒｔｙＢａｇ（第２の記憶領域）
５００      独自記憶領域（第１の記憶領域）
６０１      登録部
６０４、１３０１      双方向通信部
６０５、１３０３、１３０４      共有情報記憶部（情報記憶部）
６１１      登録要求部
６２１      共有情報管理部（情報管理部）
【先行技術文献】
【特許文献】
【０２１９】
【特許文献１】特開２００８−０９０４７４号公報
【図１】
2019160288.tif 000003
【図２】
2019160288.tif 000004
【図３】
2019160288.tif 000005
【図４】
2019160288.tif 000006
【図５】
2019160288.tif 000007
【図６】
2019160288.tif 000008
【図７】
2019160288.tif 000009
【図８】
2019160288.tif 000010
【図９】
2019160288.tif 000011
【図１０】
2019160288.tif 000012
【図１１】
2019160288.tif 000013
【図１２】
2019160288.tif 000014
【図１３】
2019160288.tif 000015
【図１４】
2019160288.tif 000016
【図１５】
2019160288.tif 000017
【図１６】
2019160288.tif 000018
【図１７】
2019160288.tif 000019