JP4650850B2 - サーバ装置およびプリンタ設定方法およびプログラムおよび記録媒体 - Google Patents

サーバ装置およびプリンタ設定方法およびプログラムおよび記録媒体 Download PDF

Info

Publication number
JP4650850B2
JP4650850B2 JP2008171407A JP2008171407A JP4650850B2 JP 4650850 B2 JP4650850 B2 JP 4650850B2 JP 2008171407 A JP2008171407 A JP 2008171407A JP 2008171407 A JP2008171407 A JP 2008171407A JP 4650850 B2 JP4650850 B2 JP 4650850B2
Authority
JP
Japan
Prior art keywords
printer
printer driver
server
driver
logical
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP2008171407A
Other languages
English (en)
Other versions
JP2008299861A (ja
Inventor
朋子 阪口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Marketing Japan Inc
Original Assignee
Canon Marketing Japan Inc
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 Canon Marketing Japan Inc filed Critical Canon Marketing Japan Inc
Priority to JP2008171407A priority Critical patent/JP4650850B2/ja
Publication of JP2008299861A publication Critical patent/JP2008299861A/ja
Application granted granted Critical
Publication of JP4650850B2 publication Critical patent/JP4650850B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、サーバ・ベースド・コンピューティング環境を提供可能なサーバ装置およびプリンタ設定方法およびプログラムおよび記録媒体に関するものである。
従来、パーソナルコンピュータに導入したクライアントアプリケーションの処理よりサーバに格納されたデータを参照/更新する「クライアント/サーバ(C/S)型システム」は、クライアントアプリケーションの配布、バージョンアップ等に多大な管理コストがかかることや、サーバ・クライアント間で多量のデータをやりとりするため低速なWAN環境でのレスポンス不良等の問題点を抱えていた。
このようなC/S型システムの問題点を解決すべく、各々のパーソナルコンピュータで処理していたクライアントアプリケーションプログラムをサーバで集中管理するサーバ・ベースド・コンピューティングという技術が確立されつつある。
その中の一つが、Microsoft社のサーバ系のWindows(登録商標)オペレーティングシステム(Windows(登録商標) NT Server/2000Server/Server2003等)で提供するターミナルサービス機能である。また、ターミナルサービス機能を利用したネットワークシステムの事をターミナルサービスネットワークシステムと言う。
ターミナルサービス機能とは、クライアントPCがサーバにログインする事によりクライアントがサーバ内の資源(CPU,メモリ,記憶装置,ソフトウェア,データ等)を利用できるようになるという機能である。この時クライアントPCは、出入力端末として存在し、クライアントPCに接続されたキーボードやマウスの入力情報をサーバに送信したり、サーバの仮想デスクトップ画面や動作しているアプリケーションの情報をクライアントPCの画面上に表示する。
例えば、クライアントPC上にMicrosoft Excel(登録商標)がインストールされていなくても、クライアントユーザはターミナルサービスを利用する事により、Excel(登録商標)形式のファイルの閲覧、編集が可能というわけである。
しかし、このようなターミナルサービスシステムを利用した場合、ログイン中のクライアントPCからの印刷は通常の印刷とは異なる。
以下、ターミナルサービスを利用したローカルプリントへの印刷について、ターミナルサービスを利用しない場合と比較して説明する。
まず、図17を参照して、ターミナルサービスを利用しない場合のローカルプリンタへの印刷について説明する。
図17は、従来のローカル印刷の実態を表すハードウェア構成とネットワーク構成の一例を示すブロック図である。
図17において、100はホストコンピュータ(ホストPC)を表している。ホストコンピュータ100は、CPU105と、ランダムアクセスメモリ(RAM)101と、ディスプレイ104と、記憶媒体(HDD)106と、入力装置107とネットワークアダプタ108とを有している。
RAM101上には、オペレーティングシステム(Operation System(OS))102とアプリケーション103がロードされ、CPU105により実行されている。このOS102内には、プリンタドライバ109〜111が存在しており、論理プリンタ112〜114が登録されている。
論理プリンタ112〜114の実体は、プリンタドライバ109〜111であり、機能はプリンタドライバ109〜111に依存する。また、プリンタドライバの制御を行うのはOS102であり、その処理はCPU105が行う。
また、アリケーション103は、ドキュメントや図等を印刷する機能を持つ。一般に、アプリケーションは、プリンタドライバに印刷ジョブを送信し、プリンタドライバが印刷処理を行う。この時、アプリケーションは、同一OS上に存在するプリンタドライバにしかジョブを投げる事が出来ない。なぜなら、アプリケーションとプリンタドライバは、同一のOSにより制御を受け、OSの機能を用いて印刷を行うからである。
今、RAM101からアプリケーション103が読み込まれOS102上に制御されているとする。アプリケーション103が作成したドキュメントを印刷する場合、アプリケーション103は、プリンタドライバ109〜111のいずれかに印刷を要求し、印刷データを送信する。プリンタドライバ109〜111によって解析されたデータは印刷可能な形態となり、物理プリンタ115上に印刷される。
以上がローカルプリンタへの印刷の手順である。ところが、ターミナルサービス環境ではこのような手順では、クライアントのローカルプリンタへの印刷ができない。
何故なら、ターミナルサービスネットワーク上では、クライアントユーザが操作するアプリケーションは、実際にはサーバ上で処理されている為、アプリケーションは、印刷要求を同一OS上のプリンタドライバ(即ち、サーバ上のプリンタドライバ)にしか発行できない。これでは、クライアントとサーバとの間で物理的距離がある場合に、クライアントユーザは、印刷物を取得出来ないという問題点があった。
そこで、現状ではターミナルサービス環境において、サーバ側で作成されたドキュメントをクライアントのプリンタで印刷するためのリダイレクトプリントという方法が行われている。以下、図18を用いて、このリダイレクトプリントの様子を説明する。
図18は、従来のネットワークリダイレクト印刷の実態を表すハードウェア構成とネットワーク構成の一例を示すブロック図である。但し、クライアントがセッション状態にあることを前提としている。
図18において、200xはサーバコンピュータ(サーバ)を表している。サーバ200xは、CPU203xと、記憶媒体(HDD)205xと、ランダムアクセスメモリ(RAM)201xと、ネットワークアダプタ202xを有している。
このRAM201x上には、オペレーティングシステム(OS)210xと、ターミナルサービス211xと、アプリケーション212xが存在する。このアプリケーション212xは、ドキュメントを作成し、印刷をする機能を持つ。なお、ターミナルサーバでは特に入力装置とディスプレイを必要としないため、サーバ200x上には、入力装置204x,ディスプレイは無くてもよい。
200aはクライアントコンピュータ(クライアント)を表している。クライアント200aは、CPU203aと、ディスプレイ202aと、入力装置205aと、記憶媒体(HDD)204aと、ランダムアクセスメモリ(RAM)201aと、ネットワークアダプタ206aを有している。このRAM201a上には、オペレーティングシステム(OS)210aと、ターミナルサービスクライアント211aが存在する。
サーバ200xとクライアント200aはネットワーク200rによって通信可能に接続されている。
以下、ターミナルサービスクライアント211aがターミナルサービス211xへ接続前の構成について説明する。
クライアント200aのOS210a内には、プリンタメーカの提供するプリンタドライバ230a,250aが登録されている。また、OS210a内には、プリンタドライバ230aを実体とする論理プリンタ231aが登録され、プリンタドライバ250aを実体とする論理プリンタ251aが登録されている。これら論理プリンタ231a,251aの出力先ポートは、実際のプリンタデバイスに接続されており、それぞれ印刷が可能な状態である。なお、プリンタドライバの制御は、OS210aによって行われ、その処理はCPU203aが行う。
一方、サーバ200xのOS210x内には、プリンタメーカの提供するプリンタドライバ230xとOSに同梱されているユニドライバ250xが登録されている。プリンタドライバの制御は、OS210xによって行われ、その処理はCPU203xが行う。
次に、ターミナルサービスクライアント接続時の構成について説明する。
まず、ターミナルサービスクライアント211aがターミナルサービス211xに接続されると、サーバ側では、CPU203xにより、RAM201xから読み込まれ実行されるターミナルサービス211xが、リダイレクト用の論理プリンタ231x,251xを作成する。
この時、ターミナルサービス211xは、クライアント上に存在する全ての論理プリンタの情報を取得する。該取得した論理プリンタの情報の中には、論理プリンタ名、プリンタドライバ名も含まれる。これらの情報を元に、ターミナルサービス211xは、自動作成が許可されている論理プリンタをサーバOS210x上に自動作成する(ユーザの作成指示によらずターミナルサービス211xが作成する)。なお、この自動作成された論理プリンタを、自動作成プリンタやオートクリエイテッドプリンタ等という。
該自動作成された論理プリンタは、ターミナルサービス211xにより、プリンタドライバ名をキーとしてサーバOS210x上に存在するプリンタドライバ名と同一のものを検索し、同一と判断されたプリンタドライバを実体として作成される。
また、全ての自動作成された論理プリンタの出力先ポートは、クライアント上に存在する同じプリンタドライバ名を持つ論理プリンタに設定されており、リダイレクト印刷が可能なようになっている。なお、このようにサーバ側の自動作成論理プリンタの出力先をクライアントの論理プリンタに設定してリダイレクト印刷を可能にする作業は「マッピング」と言われている。
上述の自動作成された論理プリンタは、図18で言うところの論理プリンタ231x,251xに相当し、この論理プリンタ231x,251xは、プリンタドライバ230x,ユニドライバ250xを実体として持つ。なお、プリンタドライバ230xは、各プリンタメーカが提供するプログラムであり、ユニドライバ250xはOSが提供するプログラムである。また、一般的にOSが提供するプリンタドライバは、最小限の機能しかもたず、プリンタメーカが提供するものよりも機能面で劣る。
上述した論理プリンタ231x,251xのマッピングは、200m,201mに相当する。これらは物理的に接続されているのではなく、論理的に関連付けが行われている事を意味している。
上記のようなリダイレクトプリントでは、サーバのアプリケーション212xで作成されたドキュメントの印刷データは、一旦はサーバ200xの論理プリンタ231x,251xに送信され、その後にそれぞれに関連付けられたクライアント200aの論理プリンタ231a,251aに転送される事によって、クライアント200a側の物理プリンタ201rからの印刷が可能となる。
以上のような論理プリンタを自動作成してマッピングを行う機能を備えたミドルウェアとして、Citrix社のMetaFrame(登録商標)などが挙げられる。
また、このような論理プリンタを使った印刷に関連して特開2004-78281,特開2004-78282などが提案されている。
特開2004−78281号公報 特開2004−78282号公報
しかしながら、上記従来のリダイレクトプリントでは、サーバとクライアントとの間に、同一プリンタドライバがインストールされている事を前提としており、幾つかの問題を抱えている。
上述のように、リダイレクトプリントを可能にするマッピング作業は、サーバとクライアントの双方のプリンタドライバ名をキーに行われる。この時、互いのドライババージョンは確認されず、プリンタドライバ名だけをキーにしてマッピングを行う為、当然バージョンの違う論理プリンタ同士がマッピングされる事があった。
また、サーバ内にクライアントと同じ名前のプリンタドライバが存在しない場合は、ユニドライバと言われる最小限の機能しかもたないOS内蔵のプリンタドライバ(上述のユニドライバ250x)で作成された論理プリンタとマッピングを行う場合と、マッピングされない場合がある。
以下、実際にユニドライバやバージョンの違うドライバから作成された論理プリンタとマッピングされる場合に発生する障害について説明する。
まず、ターミナルサービスは、サーバ上に同名のプリンタドライバが見つからない場合、ユニドライバを用いて論理プリンタを作成し、マッピングを行う場合がある。これは図18に示したマッピング201mに相当する。
その為、クライアント200aには、最新のプリンタドライバ250aがインストールされているにも関わらず、サーバログオン時には最小限の機能でしか印刷ができないという事が起こりうる。また、マッピングが行われない場合もある。この場合、希望のプリンタで印刷が出来ないという問題が起こる。
その為に、問題が発生する度に、サーバ管理者が呼ばれ、サーバマシンに最新のプリンタドライバをインストールするという作業が発生する。また、インストール作業を人間に頼っている為、その人物(サーバ管理者)が不在であった場合、インストール作業は行われず、クライアントユーザは延々と待たされる事になる。
また、クライアントユーザは、サーバへの最新のプリンタドライバのインストールが終わると共に、セッションの再接続をする必要がある。これは、例えサーバに最新のプリンタドライバをインストールしたとしても、クライアントユーザが再接続し、ターミナルサービスのマッピング機能を再実行させない限り、マッピングが行われず、結果として思い通りの印刷が出来ないままであるためである。
また、サーバ200xのプリンタドライバ230xよりクライアント200aのプリンタドライバ230aのバージョンが高い場合で、クライアントユーザがサーバアプリケーション212xより印刷を行う時、クライアントユーザから見えるプリンタプロパティ画面は、バージョンの低い自動作成された論理プリンタ231xのプロパティ画面である。プリンタプロパティ画面の一例を図19に示す。
その為クライアントユーザは、自身のプリンタドライバ230aの機能を最大限生かす事が出来ないという問題が起こる。この場合にも、ユニドライバ250xでマッピングされる問題と同様、問題が発生する度にサーバ管理者が呼ばれ、クライアントユーザは再接続の手間が発生する。
以上説明したような各種の問題が発生する事により、人件費増大に伴うコスト増大、再接続作業が頻繁化することによるネットワークトラフィックの増大といったデメリットを負う事になる。これらデメリットはローコスト化、ネットワーク高速化を目指す企業にとって痛手となる可能性があり、上記問題点の解決が望まれている。
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、サーバ側論理プリンタをクライアント側論理プリンタへマッピングする機能を持ち、ユーザがサーバのプリンタドライバをインストール、更新できないターミナルサービス環境において、人(サーバ管理者等)によるプリンタドライバのインストール作業を発生させることなく、またユーザに意識させることもなく、クライアントと同一プリンタドライバをサーバ装置にもインストールさせて、クライアントユーザは、サーバ装置とクライアント装置との間で、クライアント装置と同じプリンタドライバを使って、ローカルプリンタによりユーザの所望の印刷を行うことができ、さらに追加されたプリンタドライバを自動で削除することにより、人(サーバ管理者等)によるプリンタドライバの削除作業を発生させるこののない、サーバ装置およびプリンタ設定方法およびプログラムおよび記録媒体を提供することである。
本発明は、サーバ・ベースド・コンピューティング環境を提供するサーバ装置であり、このサーバ装置にリモートクライアント装置がログオンする際に該リモートクライアント装置に登録されている第1の論理プリンタに対応する第2の論理プリンタをこのサーバ装置自身に追加インストールする機能を有するターミナルサービスを提供するサーバ装置であって、前記第1の論理プリンタに対応した、プリンタドライバ名を含むプリンタドライバの情報を前記リモートクライアント装置から取得するドライバ情報取得手段と、前記取得手段により取得された前記第1の論理プリンタのプリンタドライバ情報と該サーバ装置に既にインストールされているプリンタドライバの情報とを比較し、前記リモートクライアント装置にインストールされ且つ該サーバ装置にインストールされていない、インストールすべきプリンタドライバを特定する特定手段と、前記特定手段により特定されたインストールすべきプリンタドライバをあらかじめ特定されている記憶場所から取得するプリンタドライバ取得手段と、前記プリンタドライバ取得手段により取得されたプリンタドライバを該サーバ装置にインストールする際に、前記プリンタドライバ取得手段により取得されたプリンタドライバ名が別名に擬態されて第2の論理プリンタとしてインストールされるよう、当該取得されたプリンタドライバを編集する擬態化手段と、前記擬態化手段により編集されたプリンタドライバを該サーバ装置にインストールするとともに、該プリンタドライバの論理プリンタを該論理プリンタの出力先ポートが前記第1の論理プリンタである第2の論理プリンタとして作成するよう制御するインストール制御手段と、前記リモートクライアント装置が前記サーバ・ベースド・コンピューティング環境からログオフした際に、該リモートクライアント装置に登録されている第1の論理プリンタに対応して作成された第2の論理プリンタが削除されることに引き続き、前記擬態化手段により別名に擬態されてインストールされているプリンタドライバを削除する擬態ドライバ削除手段とを有することを特徴とする。
本発明によれば、サーバ側論理プリンタをクライアント側論理プリンタへマッピングする機能を持ち、ユーザがサーバのプリンタドライバをインストール、更新できないターミナルサービス環境において、人(サーバ管理者等)によるプリンタドライバのインストール作業を発生させることなく、またユーザに意識させることもなく、クライアントと同一プリンタドライバをサーバ装置にもインストールさせて、クライアントユーザは、サーバ装置とクライアント装置との間で、クライアント装置と同じプリンタドライバを使って、ローカルプリンタによりユーザの所望の印刷を行うことができ、さらに追加されたプリンタドライバを自動で削除することにより、人(サーバ管理者等)によるプリンタドライバの削除作業を発生させることのないターミナルサービス環境を構築することができる。
以下、図面を参照して、本発明の実施形態を詳細に説明する。
図1は、本発明の一実施形態を示すサーバ装置およびクライアント装置を適用可能なターミナルサービスネットワークシステムのネットワーク構成の一例を示すブロック図であり、背景技術の欄で示した図18と同一のものには同一の符号を付してある。なお、図1のネットワーク上に接続される各種端末の構成は一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。これらは必要に応じて管理者が使用するものであり、本発明を限定するものではない。
図1に示すように、サーバ装置200xは、ネットワーク200を介して複数のリモートクライアント200a,200bと接続されている。また、複数のリモートクライアント200a,200bは、ネットワーク200を介してサーバ200x及びデバイス機器(プリンタ)410a,411a,410bと接続されている。なお、リモートクライアント200a,200bとプリンタ410a,411a,410bとがUSBI/F,パラレルI/Fを介して直接接続されるように構成してもよい。また、プリンタは幾つ接続されてもよい。
図2は、図1に示したターミナルサービスシステムのハードウェア構成を説明するブロック図であり、特に、クライアントとしてクライアント200aを代表して示してあるが、クライアント200bも同様である。但し、ターミナルクライアントがログイン中でセッション状態にあることを前提としている。
また、図2は、背景技術の欄で示した現状の構成図である図18に本発明を適用した後の構成に対応し、図18と同一のものには同一の符号を付してある。なお、図2と図18との相違(即ち、従来の技術との相違点)は以下の点である。
図2に示すように、サーバ200xのOS210x上には、サーバ用プリンタ監視プログラム513xがインストールされている。このサーバ用プリンタ監視プログラム513xは、本発明の対象となるプログラムであり、HDD205xからRAM201x内にロードされ、CPU203xにより実行される。
また、クライアント200aのOS210a上にも、クライアント用プリンタ監視プログラム512aがインストールされている。このクライアント用プリンタ監視プログラム512aも、本発明の対象となるプログラムであり、HDD204aからRAM201a内にロードされ、CPU203aにより実行される。
ここで、サーバ200xに存在しているプリンタドライバ540xに注目すると、これは、本発明適用前には存在しなかったプリンタドライバである。
図18に示した状態では、クライアント200aの論理プリンタ231aにマッピングされる自動作成された論理プリンタは、プリンタドライバ230xを実体として作成されていた。しかしながら、本発明ではサーバ用プリンタ監視プログラム513xが、クライアントのプリンタドライバ230aと同等の機能を持つプリンタドライバ540xをインストールさせ、プリンタドライバ540xを実体とする論理プリンタ541xを作成し、論理プリンタ541xの出力先ポートをクライアントプリンタである理論プリンタ231aに設定することにより、クライアント200aのプリンタドライバ230aと同等の機能の印刷を可能とする。
また、サーバ200xに存在しているプリンタドライバ560xに注目すると、これも本発明適用前には存在しなかったプリンタドライバである。図18に示した状態では、クライアント200aの論理プリンタ251aにマッピングされる自動作成プリンタは、ユニドライバ250xを実体として作成されていたが、本発明ではサーバ用プリンタ監視プログラム513xがクライアントのプリンタドライバ250aと同等の機能を持つプリンタドライバ560xをインストールさせ、プリンタドライバ560xを実体とする論理プリンタ561xを作成し、論理プリンタ561xの出力先ポートをクライアントプリンタである論理プリンタ251aに設定する事により、クライアントのプリンタドライバ250aと同等の機能の印刷を可能とする。
また、サーバ用プリンタドライバ監視プログラム513xは、OS210xに常駐しても、クライアント200aが接続する度に、その都度起動してもどちらでも良い。クライアント用プリンタドライバ監視プログラム512aもまた、OS210aに常駐しても、サーバ200xへの接続の度に、その都度起動してもどちらでも良い。
以下、サーバ用プリンタ監視プログラム513xがプリンタドライバ540xと論理プリンタ541xを作成する手順について、フローチャートを用いて説明する。
図3は、本発明のサーバ装置およびクライアント装置を適用可能なターミナルサービスネットワークシステムにおける第1の制御処理手順の一例を示すフローチャートであり、クライアントユーザがターミナルサーバにログインし、クライアント用プリンタ監視プログラム512aとサーバ用プリンタ監視プログラム513xが起動し、プリンタドライバをインストールする処理、即ち、本発明のプリンタドライバ監視システムおけるプリンタドライバ監視及びインストールの全体の流れを示したものである。なお、図中、S601〜S606は、サーバ200x側の処理に対応し、図2に示したCPU203xによりHDD205xからRAM201xにロードして実行するサーバ用プリンタ監視プログラム513xの処理に対応する。また、図中、S651,S652は、クライアント200a,200b側の処理に対応し、クライアント200aの場合、図2に示したCPU203aによりHDD205aからRAM201aにロードして実行されるクライアント用プリンタ監視プログラム512aの処理に対応する。なお、以下、クライアント200aを代表して説明する。
まず、ステップS651において、CPU203aにより実行されるクライアント用プリンタ監視プログラム512a(以下、クライアント用プリンタ監視プログラム512a)は、リモートクライアント201aのサーバへのログインのタイミングで、クライアントOS210a上に存在するローカルプリンタの情報を取得する。
次に、ステップS652において、クライアント用プリンタ監視プログラム512aは、ステップS651で取得したローカルプリンタの情報をまとめてクライアントプリンタドライバ一覧600としてサーバ200xに送信し、処理を終了する。このクライアントプリンタドライバ一覧(クライアントプリンタドライバ情報)600の一例を図4に示す。
図4は、図3に示したクライアントプリンタドライバ一覧(クライアントプリンタドライバ情報)600の一例を表形式で示すデータ構成図である。
クライアントプリンタドライバ一覧600において、1201、1202、1203はそれぞれ項目を表し、1200がプリンタドライバ名、1201がプリンタドライバのバージョン、1203が対応OSである。
1201a、1201bはプリンタドライバ名の情報である。また、1202a、1202bは、プリンタドライバのバージョンの情報であり、1203a、1203bは対応OSの情報である。
以下、図3のフローチャートの説明に戻る。
ステップS601において、CPU203xにより実行されるサーバ用プリンタ監視プログラム513x(以下、サーバ用プリンタ監視プログラム513x)は、ターミナルサービス211xのクライアントのログインをトリガとして、ターミナルサービス211xからクライアントログイン名を取得する。
次に、ステップS602において、クライアント200aから通信を受けたサーバ200xのサーバ用プリンタ監視プログラム513xは、クライアントローカルに登録されているプリンタドライバ一覧600(図4)を受けとり、RAM201xに保持する。
なお、本フローチャートでは、クライアント200aがターミナルサービス211xにログインした際に、クライアント200a側からプリンタドライバ一覧600を送信し、サーバ200xがそのプリンタドライバ一覧600を受信する構成について説明しているが、サーバ用プリンタ監視プログラム513xが、ターミナルサービス211xのクライアントのログインをトリガとして、クライアント200aに対して、プリンタドライバ一覧600の送信を要求し、その要求に基づいてクライアント200a側から送信されるプリンタドライバ一覧600を受信するように構成してもよい。
次に、ステップS603において、サーバ用プリンタ監視プログラム513xは、サーバ200xにインストールが必要だと判断されたプリンタドライバの一覧(後述する図8に示すサーバドライバインストール一覧)を作成する(詳細は図5に示す)。
次に、ステップS604において、サーバ用プリンタ監視プログラム513xは、ステップS603で作成された一覧に基づいて、サーバ200xにインストールが必要だと判断されたドライバが一つ以上あるか否かを判定し、一つ以上あると判定した場合には、ステップS605において、サーバ200xに対するインストール処理を実行し(詳細は図9に示す)、ステップS606に処理を進める。
一方、ステップS604で、サーバ用プリンタ監視プログラム513xが、サーバ200xにインストールが必要だと判断されたドライバが一つもないと判定した場合には、そのままステップS606に処理を進める。
そして、これらの処理を終えると、ステップS606にて、サーバ用プリンタ監視プログラム513xは、クライアント用プリンタドライバ監視プログラム512aに対し、終了通知を行い、処理を終了する。
図5は、本発明のサーバ装置およびクライアント装置を適用可能なターミナルサービスネットワークシステムにおける第2の制御処理手順の一例を示すフローチャートであり、図3のステップS603に示したサーバにインストールが必要だと判断されたプリンタドライバの一覧を作成する処理(第1のインストール対象プリンタドライバを特定処理)を示したものである。なお、図中、S701〜S704は、サーバ200x側の処理に対応し、図2に示したCPU203xによりHDD205xからRAM201xにロードして実行するサーバ用プリンタ監視プログラム513xの処理に対応する。
まず、ステップS701において、サーバ用プリンタ監視プログラム513xは、クライアント200aのプリンタドライバを一つずつ調べる為の判定を行っており、クライアント200aの全てのプリンタドライバについて調べたと判定した場合には、そのまま処理を終了する。
一方、サーバ用プリンタ監視プログラム513xが、クライアント200aの全てのプリンタドライバについて未だ調べていないと判定した場合には、ステップS702において、サーバ用プリンタ監視プログラム513xは、ある1つのプリンタドライバを対象として、そのプリンタドライバがクライアント200aには存在するがサーバ200xには存在しない(クライアント200aのみに存在する)か否かを判定し、クライアントにもサーバにも存在すると判定した場合には、そのままステップS704に処理を進める。
一方、サーバ用プリンタ監視プログラム513xが、カレントのプリンタドライバがクライアント200aには存在するがサーバ200xには存在しない(クライアント200aのみに存在する)と判定した場合には、サーバ用プリンタ監視プログラム513xは、カレントのプリンタドライバがサーバインストール条件に合致するか否かを判定するステップS703へと処理を進める。
そして、ステップS703において、サーバ用プリンタ監視プログラム513xは、カレントのプリンタドライバのバージョンが、サーバ200xとクライアント200aとで同じか否かを判定し、同じと判定した場合には、カレントのプリントドライバのサーバ200xへのインストールは必要ないので、ステップS701に処理を戻し、次のプリンタドライバを調べる。
一方、ステップS703で、サーバ用プリンタ監視プログラム513xが、カレントのプリンタドライバのバージョンが、サーバ200xとクライアント200aとで異なると判定した場合には、ステップS704において、サーバ用プリンタ監視プログラム513xは、サーバ200xへインストールするプリンタドライバの一覧であるサーバインストールドライバ一覧700を作成する処理(詳細は図6に示す)を行い、ステップS701に処理を戻し、次のプリンタドライバを調べる。
図6は、本発明のサーバ装置およびクライアント装置を適用可能なターミナルサービスネットワークシステムにおける第3の制御処理手順の一例を示すフローチャートであり、図5のステップS704に示したサーバインストール一覧作成処理(第2のインストール対象プリンタドライバを特定処理)を示したものである。なお、図中、S801〜S802は、サーバ200x側の処理に対応し、図2に示したCPU203xによりHDD205xからRAM201xにロードして実行するサーバ用プリンタ監視プログラム513xの処理に対応する。
まず、ステップS801において、サーバ用プリンタ監視プログラム513xは、ログインユーザが本システムに対する権限を持っているかどうかを判別する。この権限に関する情報は、サーバ200xのHDD205xに予め格納されているユーザ情報DB800に保持されている。このユーザ情報DB800の例を図7に示す。
図7は、図2に示したサーバ200xのHDD205xに格納されているユーザ情報DB800の一例を示す図であり、サーバにインストール可能なプリンタドライバ(名称擬態前)情報に対応する。
ユーザ情報DB800において、1301、1302はそれぞれ項目を表し、1301はユーザ名、1302は権限の有無である。1301a、1301b、1301cはユーザ名の情報であり、1302a、1302b、1302cは権限の情報である。権限情報1302a,1302bは、ユーザ名「ClientA」,「ClientB」に権限があることを示し、権限情報1302cは、ユーザ名「ClientC」権限がないことを示す。なお、この場合の権限とは、OS210xに対する権限とは異なり、本システムへの権限を意味するものである。
以下、図6のフローチャートの説明に戻る。
ステップS801で、サーバ用プリンタ監視プログラム513xが、ユーザ情報DB800に基づいてログインユーザが本システムに対する権限を持っていないと判定した場合には、そのまま処理を終了する。
一方、ステップS801で、サーバ用プリンタ監視プログラム513xが、ユーザ情報DB800に基づいてログインユーザが本システムに対する権限を持っていると判定した場合には、サーバ用プリンタ監視プログラム513xは、サーバ200xへのドライバのインストールの実行が可能となり、ステップS802に処理を進める。なお、ステップS801で、サーバに対しインストールすると判断されたプリンタドライバを、以降「擬態ドライバ」と呼ぶ事とする。
次に、ステップS802において、サーバ用プリンタ監視プログラム513xは、カレントのプリントドライバ(擬態ドライバ)をサーバ200xにインストールが必要なドライバとしてRAM201xのサーバインストールドライバ一覧700に追加し、処理を終了する。このサーバインストールドライバ一覧700の例を図8に示す。
図8は、図6のステップS802で追加されるサーバインストールドライバ一覧700の一例を一覧形式で示す図であり、RAM201xに保持される。
ユーザ情報DB800において、1701、1702、1703はそれぞれ項目を表し、1701がプリンタドライバ名、1702がプリンタドライバのバージョン、1703が対応OSに対応する。1701a、1701bはプリンタドライバ名の情報である。また、1702a、1702bはプリンタドライバのバージョン情報であり、1703a、1703bは対応OSの情報である。
なお、本実施形態では、図6のフローチャートのステップS801において、図7に示したユーザ情報DB800に基づいて、ユーザの権限を判定し、クライアントユーザに応じた擬態ドライバのインストールの有無を制御する構成について説明したが、図6のフローチャートのステップS801と図7に示したユーザ情報DB800を本発明の構成から除き、ユーザの権限を判定することなく、ステップS802へ進み、クライアントユーザに関わらず、サーバに擬態ドライバをインストール可能なように構成してもよい。
図9は、本発明のサーバ装置およびクライアント装置を適用可能なターミナルサービスネットワークシステムにおける第4の制御処理手順の一例を示すフローチャートであり、図3のステップS605に示したサーバに擬態ドライバをインストールする処理(擬態ドライバインストール処理)を示したものである。なお、図中、S901〜S907は、サーバ200x側の処理に対応し、図2に示したCPU203xによりHDD205xからRAM201xにロードして実行するサーバ用プリンタ監視プログラム513xの処理に対応する。
まず、ステップS901において、サーバ用プリンタ監視プログラム513xは、サーバインストールドライバ一覧700からサーバ200xにインストールするプリンタドライバ(擬態ドライバ)の一覧を取得し、該取得した擬態ドライバの一覧に対応するプリンタドライバインストールモジュールセット(以下、ドライバセット)を、後述する図10に示すドライバDB900内の項目「インストールモジュールセットの場所」1404で特定される記憶場所からローカルの記憶装置(RAM201x又はHDD205x)上にコピーする。なお、この時点ではドライバDB900内で指定される記憶場所には適切なドライバセットが格納されているものとする。また、ドライバDB900は、サーバ200xのHDD205xに構築されるものであっても、その他の記憶装置、例えば、通信可能な他のコンピュータ上に構築されるものであってもよい。さらに、ドライバセットが格納される記憶場所は、サーバ200xが取得可能な場所であればどのような記憶場所であってもよい。例えば、サーバ200xのHDD205xであっても、サーバ200xが読み取り可能なCD−ROMドライブにセットされたCD−ROMであっても、他のコンピュータのHDD等であってもよい。また、ドライバDB900に適切なドライバ情報をセットし、また、上記記憶場所にドライバセットを格納する方法としては、サーバ管理者が格納する方法でも良いし、クライアントユーザが格納する方法でも良い。なお、このドライバDB900の一例を図10に示す。
図10は、図2に示したサーバ200xのHDD205xに格納されているドライバDB900の一例を表形式で示す図である。
ドライバDB900において、1401、1402、1403、1404はそれぞれ項目を表し、1401がドライバ名、1402がプリンタドライバのバージョン、1403が対応OS、1404がインストールモジュールセットの格納場所に対応する。1401a、1401b、1401cはプリンタドライバ名の情報である。また、1402a、1402b、1402cはプリンタドライバのバージョン情報であり、1403a、1403b、1403cは対応OSの情報である。そして、1404a、1404b、1404cはインストールモジュールセットの情報である。
以下、図9のフローチャートの説明に戻る。
次に、ステップS902において、サーバ用プリンタ監視プログラム513xは、ステップS901でコピーしたドライバセットの一部(ドライバ名)を編集し、別名プリンタのドライバセットとする処理(詳細は図12に示す)を行う。なお、このドライバ名の編集(ドライバ名の擬態)は、同一名のプリンタドライバがサーバ200xに登録されているプリンタドライバに対しては全て行うものとする。
次に、ステップS903において、サーバ用プリンタ監視プログラム513xは、ステップS902で編集したドライバセットにより擬態ドライバをインストールする。次に、ステップS904では、サーバ用プリンタ監視プログラム513xは、ステップS903でインストールした擬態ドライバを実体とする論理プリンタの作成を行う。
なお、この論理プリンタの作成処理では、論理プリンタの出力先(出力ポート)をクライアント200a上の同一のプリンタドライバの論理プリンタとして作成するものとする。また、クライアント200a上の論理プリンタの情報は、ターミナルサービス211xが取得している場合は、ターミナルサービス211xから取得するようにしてもよいし、この論理プリンタの作成タミングで、クライアント200aに問い合わせて取得してもよいし、図3のステップS602で取得するクライアントプリンタドライバ一覧600に含めるようにしてもよい。
さらに、クライアント200a側で、1つのプリンタドライバに対して複数の論理プリンタが設定されている場合には、それぞれの論理プリンタを出力先(出力ポート)に対応する論理プリンタをそれぞれ作成するようにしてもよい。
また、作成した論理プリンタに対して、クライアント200a上の論理プリンタに設定されているプリント設定情報を、作成した論理プリンタに設定するようにしてもよい。この場合、クライアント200a上の論理プリンタに設定されているプリント設定情報は、論理プリンタを作成するタイミングでクライアント200aから取得してもよいし、図3のステップS602で取得するクライアントプリンタドライバ一覧600に含めるようにしてもよい。
次に、ステップS905において、サーバ用プリンタ監視プログラム513xは、ステップS903でインストールした擬態ドライバと、ステップS904で作成した論理プリンタの名称、擬態元のドライバ名、ドライバのバージョン等の情報を、擬態ドライバ一覧に書き込む。この情報はログインクライアント毎に保持しても良いし、全てのログインクライアントを一括して保持しても良い。この擬態ドライバ一覧の一例を図11に示す。
図11は、図9のステップS905で生成される擬似ドライバ一覧910の一例を表形式で示す図である。
擬似ドライバ一覧910において、1801、1802、1803、1804はそれぞれ項目を表し、1801が擬態ドライバインストール時のプリンタドライバ名(擬態ドライバ名)、1802が擬態ドライバのバージョン、1803が擬態ドライバの対応OS、1804が作成したユーザ名である。1801a、1801bはプリンタドライバ名の情報である。また、1802a、1802bは擬態ドライバのバージョンの情報、1803a、1803bは擬態ドライバの対応OSであり、1804a、1804bは作成したユーザ名の情報である。
以下、図9のフローチャートの説明に戻る。
ステップS906において、サーバ用プリンタ監視プログラム513xは、ステップS904で作成した論理プリンタの出力先ポートをクライアントプリンタに設定する。次に、ステップS907において、サーバ用プリンタ監視プログラム513xは、ステップS901でローカルの記憶領域にコピーしたドライバセットを削除し、処理を終了する。
図12は、本発明のサーバ装置およびクライアント装置を適用可能なターミナルサービスネットワークシステムにおける第5の制御処理手順の一例を示すフローチャートであり、図9のステップS905に示したドライバセットを別名のドライバとして擬態するドライバ名の擬態処理を示したものである。なお、図中、S1001〜S1003は、サーバ200x側の処理に対応し、図2に示したCPU203xによりHDD205xからRAM201xにロードして実行するサーバ用プリンタ監視プログラム513xの処理に対応する。
まず、ステップS1001において、サーバ用プリンタ監視プログラム513xは、図9のステップS901でサーバ200xのローカル上にコピーされたドライバセットより、セットアップ情報ファイル(infファイル)を取得する。このセットアップ情報ファイルとは、ドライバのインストールに必要な情報が記述されたファイルであり、その一例を図13に示す。
そして、ステップS1002において、サーバ用プリンタ監視プログラム513xは、セットアップファイルに記述されているドライバ名称を変更する。ドライバ名称の変更の様子を図14に示す。
そして、ステップS1003において、サーバ用プリンタ監視プログラム513xは、変更後のセットアップ情報ファイルで変更前のセットアップ情報ファイルをローカルの記憶装置に上書き保存し、処理を終了する。
図13は、図12のステップS1001で取得されるセットアップ情報ファイル1000の一例を示す図であり、サーバにインストール可能なプリンタドライバ(名称擬態前)を構成するモジュールに対応する。
セットアップ情報ファイル1000において、セクション1501はバージョン情報を表している。セクション1502は作成元を表している。セクション1503はセクション1502aで定義された一意の値(作成元)を示している。セクション1504はセクション1503aで定義された一意の値(モデル名称)を示している。なお、インストール時には、この値(モデル名称)がドライバの名称としてインストールされる。
セクション1505は、セットアップ情報ファイルの最後に記述しなくてはならないセクションである。これは、Microsoft Windows (登録商標)Family OSでの取り決めに従って記述した例であるが、どのOSの場合でも構わない。
また、上述したように1503a,1503bはプリンタドライバ名を含むセクションであり、ここのプリンタドライバ名を変更する事によって、別名のプリンタドライバとしてのインストールを可能とする。このプリンタドライバ名の変更後のセットアップ情報ファイルの例を図14に示す。
図14は、図13に示したセットアップ情報ファイル1000のプリンタドライバ名変更の様子を示す図である。
図14に示す例では、変更前のプリンタドライバ名の後にユーザ名とバージョンを付加する事によってユーザ毎、バージョン毎に区別化した名称を決めている。例えば、図13の1503a,1603aに示すように、変更前のプリンタドライバ名「LASER SHxx LBx−13xx」にユーザ名「ClientA」を付加して「LASER SHxx LBx−13xx #ClientA#1」とした。また、図13の1503b,1603bに示すように、変更前のプリンタドライバ名「xRC32xx LIPS」にユーザ名「ClientA」を付加して「xRC32xx LIPS #ClientA#3」とした。なお、プリンタドライバ名の最後に付加されている数字は、ドライバDB900のレコードの番号に対応する。
なお、変更後の名称の付け方は、どのような規則に従っても構わない。また、セットアップファイル1000内の他の記述内容の編集も行っても構わない。
図15は、本発明のサーバ装置およびクライアント装置を適用可能なターミナルサービスネットワークシステムにおける第6の制御処理手順の一例を示すフローチャートであり、インストールした擬態ドライバを削除する動作を示している。なお、図中、S1101〜S1104は、サーバ200x側の処理に対応し、図2に示したCPU203xによりHDD205xからRAM201xにロードして実行するサーバ用プリンタ監視プログラム513xの処理に対応する。
まず、ステップS1101において、サーバ用プリンタ監視プログラム513xは、削除するドライバがあるかどうかを、図11に示した擬態ドライバ一覧910に基づいて判定し、削除するドライバがないと判定した場合には、そのまま処理を終了する。
一方、ステップS1101で、サーバ用プリンタ監視プログラム513xが、削除するドライバがあると判定した場合には、ステップS1102において、サーバ用プリンタ監視プログラム513xは、削除するプリンタドライバに関連する論理プリンタがあれば、その論理プリンタが使用中であるかどうかを判断する。
そして、ステップS1102で、サーバ用プリンタ監視プログラム513xが、削除するプリンタドライバに関連する論理プリンタが使用中であると判定した場合には、ステップS1102の判定を、該論理プリンタが使用中でなくなるまで繰り返す。この時、再判定までに時間を置く等の処置をしてもよい。
一方、ステップS1102で、サーバ用プリンタ監視プログラム513xが、削除するプリンタドライバに関連する論理プリンタが使用中でないと判定した場合には、ステップS1103において、削除するプリンタドライバに関連するる論理プリンタがあれば、該論理プリンタを削除する。
次に、ステップS1104において、サーバ用プリンタ監視プログラム513xは、擬態ドライバ(削除するプリンタドライバ)を削除し、ステップS1101の処理に戻り、次のプリンタドラバに対する処理を行う。
なお、このステップ1101の処理は、必ずしも必要では無く、省略するように構成してもよい。このステップS1101の処理を省略する場合には、擬態ドライバはターミナルクライアントのログオフ後も、サーバ200x上に存在し、次回同一ユーザのログインの際には、ドライバDB900からの擬態ドライバ再インストールの手間を省く事が出来る。
なお、本実施形態では、ターミナルサービス211xの他にサーバ用プリンタ監視プログラム513xを設けているが、上述したサーバ用プリンタ監視プログラム513xの機能をターミナルサービス211xに持たせるように構成してもよい。
この場合、ターミナルサービス211xは、リモートクライアントのログイン時に、リモートクライアントの論理プリンタ情報を、対応するプリンタドライバ名、対応するプリンタドライバのバージョン情報を含めて取得し、該取得したプリンタドライバ名及びバージョン情報とサーバ200x自身にインストールされているプリンタドライバ名及びバージョン情報を比較し、前記リモートクライアント装置にインストールされ且つサーバ200x自身にインストールされていないプリンタドライバを特定し、該特定されたプリンタドライバのインストールモジュールをドライバDB900から取得してサーバ200x自身にインストールするとともに、該プリンタドライバの論理プリンタを作成するようにし、最後に、ターミナルサービス211xは、作成したサーバ200x側論理プリンタをクライアント200a側論理プリンタへマッピングするように構成する。
なお、本実施形態内の変形例を組み合わせた構成も全て本発明に含まれるものである。
また、本実施形態内で示した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
以上説明したように、本発明によれば、特に、サーバ側論理プリンタをクライアント側論理プリンタへマッピングする機能を持ち、ユーザがサーバのプリンタドライバをインストール、更新できないターミナルサービス環境において、人(サーバ管理者等)によるプリンタドライバのインストール作業を発生させることなく、またユーザに意識させることもなく、クライアントと同一プリンタドライバ(バージョンも含めて同一)をサーバにもインストールさせるように制御することにより、クライアントユーザは、サーバとクライアントとの間で、プリンタドライバのバージョンの違いを意識することなく、クライアントと同じバージョンのプリンタドライバを使って、ユーザの所望の印刷を行うことができる等の効果を奏する。
従って、サーバ・ベースド・コンピューティング環境において、ユーザに意識させることなく、リモートクライアント装置がログオンした際に、該リモートクライアント装置に登録されている論理プリンタに対応する同一バーションのプリンタドライバの論理プリンタを、このサーバ・ベースド・コンピューティング環境上に追加登録することができる。
以下、図16示すメモリマップを参照して本発明に係るターミナルサービスネットワークシステム内のサーバ装置およびクライアント装置で読み取り可能なデータ処理プログラムの構成について説明する。
図16、本発明に係るターミナルサービスネットワークシステム内のサーバ装置およびクライアント装置で読み取り可能な各種データ処理プログラムを格納する記録媒体(記憶媒体)のメモリマップを説明する図である。
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
本実施形態における図3,図5,図6,図9,図12,図15に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,DVD−ROM,磁気テープ,不揮発性のメモリカード,ROM,EEPROM,シリコンディスク等を用いることができる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ,データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
本発明の実施態様の例を以下に列挙する。
〔第1実施態様〕
サーバ・ベースド・コンピューティング環境を提供するサーバ装置(サーバ200x)であって、前記サーバ・ベースド・コンピューティング環境にログオンしているリモートクライアント装置(サーバ200a)にインストールされているプリンタドライバの情報(図4のクライアントプリンタドライバ一覧600)を取得する取得手段(CPU203xが実行するサーバ用プリンタ監視プログラム,図3のステップS602)と、前記取得手段により取得した前記プリンタドライバの情報とサーバ装置自身にインストールされているプリンタドライバの情報とを比較し、前記リモートクライアント装置にインストールされ且つサーバ装置自身にインストールされていないプリンタドライバ(図8のサーバインストールドライバ一覧700)を特定する特定手段(CPU203xが実行するサーバ用プリンタ監視プログラム,図3のステップS603,図5,図6)と、
前記特定手段により特定されたプリンタドライバのインストールモジュールを記憶手段から取得してサーバ装置自身にインストールするとともに、該プリンタドライバの論理プリンタを該論理プリンタの出力先を前記リモートクライアント上の同一のプリンタドライバの論理プリンタとして作成するインストール手段(CPU203xが実行するサーバ用プリンタ監視プログラム,図3のステップS605,図9,図12)とを有することを特徴とするサーバ装置。
〔第2実施態様〕
前記取得手段により取得される前記プリンタドライバの情報は、プリンタドライバのバージョン情報(図4のバージョン情報1202)を含むものであり、前記特定手段は、プリンタドライバ名が同一であってもバージョン情報が異なる場合には異なるプリンタドライバとして、前記リモートクライアント装置に登録され且つサーバ装置自身に登録されていないプリンタドライバを特定する(図5のステップS703)ことを特徴とする第1実施態様記載のサーバ装置。
〔第3実施態様〕
前記インストール手段は、前記特定手段により特定されたプリンタドライバをサーバ装置自身にインストールする際に、プリンタドライバ名が同一でバージョン情報が異なるプリンタドライバがサーバ装置自身にインストール済みである場合には、前記特定手段により特定されたプリンタドライバのプリンタドライバ名を別名に擬態してインストールする(図9のステップS902,図12)ことを特徴とする第1又は2実施態様記載のサーバ装置。
〔第4実施態様〕
前記取得手段は、前記リモートクライアント装置が前記サーバ・ベースド・コンピューティング環境にログオンした際に、前記リモートクライアント装置にインストールされているプリンタドライバの情報を取得する(図3のステップS603)ことを特徴とする第1〜3実施態様のいずれかに記載のサーバ装置。
〔第5実施態様〕
前記リモートクライアント装置が前記サーバ・ベースド・コンピューティング環境にログオフした際に、前記インストール手段により作成された論理プリンタを削除する削除手段(CPU203xが実行するサーバ用プリンタ監視プログラム,図15のステップS1101〜S1103)を有することを特徴とする第4実施態様記載のサーバ装置。
〔第6実施態様〕
前記リモートクライアント装置が前記サーバ・ベースド・コンピューティング環境にログオフした際に、前記インストール手段にインストールされたプリンタドライバと、該プリンタドライバに対応して作成された論理プリンタとを削除する削除手段(CPU203xが実行するサーバ用プリンタ監視プログラム,図15のステップS1101〜S1104)を有することを特徴とする第4実施態様記載のサーバ装置。
〔第7実施態様〕
サーバ・ベースド・コンピューティング環境を提供するサーバ装置におけるプリンタ設定方法であって、前記サーバ・ベースド・コンピューティング環境にログオンしているリモートクライアント装置にインストールされているプリンタドライバの情報を取得する取得ステップ(図3のステップS602)と、該取得した前記プリンタドライバの情報とサーバ装置自身にインストールされているプリンタドライバの情報とを比較し、前記リモートクライアント装置にインストールされ且つサーバ装置自身にインストールされていないプリンタドライバを特定する特定ステップ(図3のステップS603,図5,図6)と、該特定されたプリンタドライバのインストールモジュールを記憶手段から取得してサーバ装置自身にインストールするとともに、該プリンタドライバの論理プリンタを該論理プリンタの出力先を前記リモートクライアント上の同一のプリンタドライバの論理プリンタとして作成するインストールステップ(図3のステップS605,図9,図12)とを有することを特徴とするプリンタ設定方法。
〔第8実施態様〕
第7実施態様に記載されたプリンタ設定方法を実行するためのプログラム。
〔第9実施態様〕
第7実施態様に記載されたプリンタ設定方法を実行するためのプログラムをコンピュータが読み取り可能に記憶した記録媒体。
本発明の一実施形態を示すサーバ装置およびクライアント装置を適用可能なターミナルサービスネットワークシステムのネットワーク構成の一例を示すブロック図である。 図1に示したターミナルサービスシステムのハードウェア構成を説明するブロック図である。 本発明のサーバ装置およびクライアント装置を適用可能なターミナルサービスネットワークシステムにおける第1の制御処理手順の一例を示すフローチャートである。 図3に示したクライアントプリンタドライバ情報の一例を表形式で示すデータ構成図である。 本発明のサーバ装置およびクライアント装置を適用可能なターミナルサービスネットワークシステムにおける第2の制御処理手順の一例を示すフローチャートである。 本発明のサーバ装置およびクライアント装置を適用可能なターミナルサービスネットワークシステムにおける第3の制御処理手順の一例を示すフローチャートである。 図2に示したサーバのHDDに格納されているユーザ情報DBの一例を示す図である。 図6のステップS802で追加されるサーバインストールドライバ一覧の一例を一覧形式で示す図である。 本発明のサーバ装置およびクライアント装置を適用可能なターミナルサービスネットワークシステムにおける第4の制御処理手順の一例を示すフローチャートである。 図2に示したサーバのHDDに格納されているドライバDB900の一例を表形式で示す図である。 図9のステップS505で生成される擬似ドライバ一覧の一例を表形式で示す図である。 本発明のサーバ装置およびクライアント装置を適用可能なターミナルサービスネットワークシステムにおける第5の制御処理手順の一例を示すフローチャートである。 図12のステップS1001で取得されるセットアップ情報ファイルの一例を示す図である。 図13に示したセットアップ情報ファイルのプリンタドライバ名変更の様子を示す図である。 本発明のサーバ装置およびクライアント装置を適用可能なターミナルサービスネットワークシステムにおける第6の制御処理手順の一例を示すフローチャートである。 本発明に係るターミナルサービスネットワークシステム内のサーバ装置およびクライアント装置で読み取り可能な各種データ処理プログラムを格納する記録媒体(記憶媒体)のメモリマップを説明する図である。 従来のローカル印刷の実態を表すハードウェア構成とネットワーク構成の一例を示すブロック図である。 従来のネットワークリダイレクト印刷の実態を表すハードウェア構成とネットワーク構成の一例を示すブロック図である。 この種のプリンタプロパティ画面の一例を示す模式図である。
符号の説明
200a クライアントコンピュータ
200x サーバコンピュータ
201a,201x RAM
203a,203x CPU
205x HDD
211a ターミナルサービスクライアント
211x ターミナルサービス
220a,220x プリンタ
220a,230x,250a プリンタドライバ
231a,251a 論理プリンタ
512a クライアント用プリンタ監視プログラム
513x サーバ用プリンタ監視プログラム
540x,560x 擬態プリンタドライバ
541x,561x 擬態プリンタドライバに対応する論理プリンタ

Claims (7)

  1. サーバ・ベースド・コンピューティング環境を提供するサーバ装置であり、このサーバ装置にリモートクライアント装置がログオンする際に該リモートクライアント装置に登録されている第1の論理プリンタに対応する第2の論理プリンタをこのサーバ装置自身に追加インストールする機能を有するターミナルサービスを提供するサーバ装置であって、
    前記第1の論理プリンタに対応した、プリンタドライバ名を含むプリンタドライバの情報を前記リモートクライアント装置から取得するドライバ情報取得手段と、
    前記取得手段により取得された前記第1の論理プリンタのプリンタドライバ情報と該サーバ装置に既にインストールされているプリンタドライバの情報とを比較し、前記リモートクライアント装置にインストールされ且つ該サーバ装置にインストールされていない、インストールすべきプリンタドライバを特定する特定手段と、
    前記特定手段により特定されたインストールすべきプリンタドライバをあらかじめ特定されている記憶場所から取得するプリンタドライバ取得手段と、
    前記プリンタドライバ取得手段により取得されたプリンタドライバを該サーバ装置にインストールする際に、前記プリンタドライバ取得手段により取得されたプリンタドライバ名が別名に擬態されて第2の論理プリンタとしてインストールされるよう、当該取得されたプリンタドライバを編集する擬態化手段と、
    前記擬態化手段により編集されたプリンタドライバを該サーバ装置にインストールするとともに、該プリンタドライバの論理プリンタを該論理プリンタの出力先ポートが前記第1の論理プリンタである第2の論理プリンタとして作成するよう制御するインストール制御手段と、
    前記リモートクライアント装置が前記サーバ・ベースド・コンピューティング環境からログオフした際に、該リモートクライアント装置に登録されている第1の論理プリンタに対応して作成された第2の論理プリンタが削除されることに引き続き、前記擬態化手段により別名に擬態されてインストールされているプリンタドライバを削除する擬態ドライバ削除手段と、
    を有することを特徴とするサーバ装置。
  2. 前記インストール制御手段は、リモートクライアント側で1つのプリンタドライバに対して前記第1の論理プリンタが複数設定されている場合には、前記第2の論理プリンタを前記複数の第1の論理プリンタに対応するようにそれぞれ作成することを特徴とする請求項1記載のサーバ装置。
  3. 前記プリンタドライバ取得手段は、プリンタドライバのインストールモジュールを取得するものであり、
    前記擬態化手段は、前記プリンタドライバのインストールモジュールのセットアップ情報ファイルに設定されているプリンタドライバ名を別名に擬態して、保存することにより前記プリンタドライバを編集することを特徴とする請求項1乃至2に記載のサーバ装置。
  4. 前記擬態化手段は、プリンタドライバ名を別名に編集する際の命名は、前記ドライバ情報取得手段により、取得した、ドライバ名、バージョン情報およびクライアント名を用いて行うことを特徴とする請求項1乃至3記載のサーバ装置。
  5. サーバ・ベースド・コンピューティング環境を提供するサーバ装置であり、このサーバ装置にリモートクライアント装置がログオンする際に該リモートクライアント装置に登録されている第1の論理プリンタに対応する第2の論理プリンタをこのサーバ装置自身に追加インストールする機能を有するターミナルサービスを提供するサーバ装置におけるプリンタ設定方法であって、
    ドライバ情報取得手段が、前記第1の論理プリンタに対応した、プリンタドライバ名を含むプリンタドライバの情報を前記リモートクライアント装置から取得するドライバ情報取得ステップと、
    特定手段が、前記取得ステップにより取得された前記第1の論理プリンタのプリンタドライバ情報と該サーバ装置に既にインストールされているプリンタドライバとを比較し、前記リモートクライアント装置にインストールされ且つ該サーバ装置にインストールされていない、インストールすべきプリンタドライバを特定する特定ステップと、
    プリンタドライバ取得手段が、前記特定ステップにより特定されたインストールすべきプリンタドライバをあらかじめ特定されている記憶場所から取得するプリンタドライバ取得ステップと、
    擬態化手段が、前記プリンタドライバ取得ステップにより取得されたプリンタドライバを該サーバ装置にインストールする際に、前記プリンタドライバ取得ステップにより取得されたプリンタドライバ名が別名に擬態されて第2の論理プリンタとしてインストールされるよう、当該取得されたプリンタドライバを編集する擬態化ステップと、
    インストール制御手段が、前記擬態化ステップにより編集されたプリンタドライバを該サーバ装置にインストールするとともに、該プリンタドライバの論理プリンタを該論理プリンタの出力先ポートが前記第1の論理プリンタである第2の論理プリンタとして作成するよう制御するインストール制御ステップと、
    前記リモートクライアント装置が前記サーバ・ベースド・コンピューティング環境からログオフした際に、該プリンタドライバに対応して作成された論理プリンタが削除されることに引き続き、前記擬態化ステップにより別名に擬態されてインストールされているプリンタドライバを削除する擬態ドライバ削除ステップと、
    を有することを特徴とするプリンタ設定方法。
  6. 請求項に記載されたプリンタ設定方法を実行するためのプログラム。
  7. 請求項に記載されたプリンタ設定方法を実行するためのプログラムをコンピュータが読み取り可能に記憶した記録媒体。
JP2008171407A 2008-06-30 2008-06-30 サーバ装置およびプリンタ設定方法およびプログラムおよび記録媒体 Expired - Fee Related JP4650850B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008171407A JP4650850B2 (ja) 2008-06-30 2008-06-30 サーバ装置およびプリンタ設定方法およびプログラムおよび記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008171407A JP4650850B2 (ja) 2008-06-30 2008-06-30 サーバ装置およびプリンタ設定方法およびプログラムおよび記録媒体

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2004345768A Division JP4219324B2 (ja) 2004-11-30 2004-11-30 サーバ装置およびプリンタ設定方法およびプログラムおよび記録媒体

Publications (2)

Publication Number Publication Date
JP2008299861A JP2008299861A (ja) 2008-12-11
JP4650850B2 true JP4650850B2 (ja) 2011-03-16

Family

ID=40173274

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008171407A Expired - Fee Related JP4650850B2 (ja) 2008-06-30 2008-06-30 サーバ装置およびプリンタ設定方法およびプログラムおよび記録媒体

Country Status (1)

Country Link
JP (1) JP4650850B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5223723B2 (ja) * 2009-02-23 2013-06-26 富士ゼロックス株式会社 情報処理装置、情報処理システム及びプログラム
JP5312162B2 (ja) * 2009-04-10 2013-10-09 キヤノン株式会社 情報処理装置、管理サーバ、情報処理方法、及びプログラム
JP5763904B2 (ja) * 2010-09-30 2015-08-12 キヤノン株式会社 プリントシステム、印刷方法、プリントサーバおよびその制御方法、並びにプログラム
JP6127696B2 (ja) * 2013-05-02 2017-05-17 コニカミノルタ株式会社 処理装置、表示方法、およびコンピュータプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002297346A (ja) * 2001-03-29 2002-10-11 Ricoh Co Ltd Sbc対応プリンタ出力システム、sbc対応プリンタ出力方法、該方法を実現するプログラム及び該プログラムのプログラム記録媒体
JP2004287841A (ja) * 2003-03-20 2004-10-14 Ricoh Co Ltd プリンタ情報設定方法、サーバ及びプログラム
JP2004318296A (ja) * 2003-04-14 2004-11-11 Ricoh Co Ltd 印刷プログラム、印刷システム、および印刷プログラムを記憶した記憶媒体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002297346A (ja) * 2001-03-29 2002-10-11 Ricoh Co Ltd Sbc対応プリンタ出力システム、sbc対応プリンタ出力方法、該方法を実現するプログラム及び該プログラムのプログラム記録媒体
JP2004287841A (ja) * 2003-03-20 2004-10-14 Ricoh Co Ltd プリンタ情報設定方法、サーバ及びプログラム
JP2004318296A (ja) * 2003-04-14 2004-11-11 Ricoh Co Ltd 印刷プログラム、印刷システム、および印刷プログラムを記憶した記憶媒体

Also Published As

Publication number Publication date
JP2008299861A (ja) 2008-12-11

Similar Documents

Publication Publication Date Title
US9043391B2 (en) Capturing and restoring session state of a machine without using memory images
US11240292B2 (en) Interfacing with remote content management systems
JP4743726B1 (ja) サーバ復旧システム
JP5233582B2 (ja) 情報処理装置、情報処理方法、及び機能拡張プログラム
JP2008511931A (ja) 遠隔計算システムのためのローカルに動作されるデスクトップ環境
CN103443783A (zh) 具有基于windows的嵌入式图像的客户机的基于状态的供应
CN103460168A (zh) 利用可扩展标记语言(XML)配置对具有基于windows的嵌入图像的特定目的客户机进行配置和定制
CN103493038A (zh) 用于自动供应配置并防止重新安装嵌入图像的客户机配置历史
JP4650850B2 (ja) サーバ装置およびプリンタ設定方法およびプログラムおよび記録媒体
CN103460204A (zh) 产生和验证客户机嵌入式图像上的定制的可扩展标记语言(xml)配置
US20110231452A1 (en) Storage system and resource management method for storage system
JP2009251803A (ja) 情報処理装置、データ処理方法、プログラム
JP2013152666A (ja) 管理システム、画像形成装置、管理システムの制御方法、画像形成装置の制御方法、プログラム
JP4219324B2 (ja) サーバ装置およびプリンタ設定方法およびプログラムおよび記録媒体
JP2012068826A (ja) サービス制御システム
JP3774684B2 (ja) 情報処理装置および情報処理装置のプリンタ設定方法およびプログラムおよび記録媒体
JP6444862B2 (ja) マッピングシステムのためのシンクライアント
US20130031548A1 (en) Information processing apparatus and storage medium
JP2013186793A (ja) 情報処理装置、イメージファイル作成方法およびプログラム
CN109144657B (zh) 一种跨操作系统平台的文件共享的方法和装置
JP5090809B2 (ja) 管理サーバおよび管理方法およびプログラムおよび記録媒体
JP5670369B2 (ja) 情報処理装置、イメージファイル管理方法およびプログラム
JP4953208B2 (ja) ワークフローシステムおよび情報処理装置およびワークフローシステムの制御方法およびプログラムおよび記録媒体
KR100735875B1 (ko) 라이브 부팅매체를 이용한 서버 원격접속과 다중 오에스사용 시스템 및 그 방법
JP5180399B2 (ja) 情報処理装置、情報処理方法およびプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101110

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101207

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101207

R150 Certificate of patent or registration of utility model

Ref document number: 4650850

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131224

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141224

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees