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

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

Info

Publication number
JP2006155288A
JP2006155288A JP2004345768A JP2004345768A JP2006155288A JP 2006155288 A JP2006155288 A JP 2006155288A JP 2004345768 A JP2004345768 A JP 2004345768A JP 2004345768 A JP2004345768 A JP 2004345768A JP 2006155288 A JP2006155288 A JP 2006155288A
Authority
JP
Japan
Prior art keywords
printer
server
printer driver
client
driver
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.)
Granted
Application number
JP2004345768A
Other languages
English (en)
Other versions
JP4219324B2 (ja
Inventor
Tomoko Sakaguchi
朋子 阪口
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 JP2004345768A priority Critical patent/JP4219324B2/ja
Publication of JP2006155288A publication Critical patent/JP2006155288A/ja
Application granted granted Critical
Publication of JP4219324B2 publication Critical patent/JP4219324B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】サーバ・ベースド・コンピューティング環境環境において、サーバ管理者等によるプリンタドライバのインストール作業を発生させることなく、またユーザに意識させることもなく、クライアントと同一プリンタドライバ(バージョンも含めて同一)をサーバ装置にもインストールさせること。
【解決手段】サーバ用プリンタ監視プログラム513xが、ターミナルサービス211xにログオンしているクライアント200aにインストールされているプリンタドライバの情報を取得し、このプリンタドライバの情報に基づいて、クライアント200aにインストールされ且つサーバ200x自身にインストールされていないプリンタドライバを特定し、該特定したプリンタドライバをサーバ200x自身にインストールし、対応する論理プリンタを該論理プリンタの出力先をクライアント200a上の同一のプリンタドライバの論理プリンタとして作成する構成を特徴とする。
【選択図】図2

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は、本発明の一実施形態を示すサーバ装置およびクライアント装置を適用可能なターミナルサービスネットワークシステムのネットワーク構成の一例を示すブロック図であり、背景技術の欄で示した図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 (9)

  1. サーバ・ベースド・コンピューティング環境を提供するサーバ装置であって、
    前記サーバ・ベースド・コンピューティング環境にログオンしているリモートクライアント装置にインストールされているプリンタドライバの情報を取得する取得手段と、
    前記取得手段により取得した前記プリンタドライバの情報とサーバ装置自身にインストールされているプリンタドライバの情報とを比較し、前記リモートクライアント装置にインストールされ且つサーバ装置自身にインストールされていないプリンタドライバを特定する特定手段と、
    前記特定手段により特定されたプリンタドライバのインストールモジュールを記憶手段から取得してサーバ装置自身にインストールするとともに、該プリンタドライバの論理プリンタを該論理プリンタの出力先を前記リモートクライアント上の同一のプリンタドライバの論理プリンタとして作成するインストール手段と、
    を有することを特徴とするサーバ装置。
  2. 前記取得手段により取得される前記プリンタドライバの情報は、プリンタドライバのバージョン情報を含むものであり、
    前記特定手段は、プリンタドライバ名が同一であってもバージョン情報が異なる場合には異なるプリンタドライバとして、前記リモートクライアント装置に登録され且つサーバ装置自身に登録されていないプリンタドライバを特定することを特徴とする請求項1記載のサーバ装置。
  3. 前記インストール手段は、前記特定手段により特定されたプリンタドライバをサーバ装置自身にインストールする際に、プリンタドライバ名が同一でバージョン情報が異なるプリンタドライバがサーバ装置自身にインストール済みである場合には、前記特定手段により特定されたプリンタドライバのプリンタドライバ名を別名に擬態してインストールすることを特徴とする請求項1又は2記載のサーバ装置。
  4. 前記取得手段は、前記リモートクライアント装置が前記サーバ・ベースド・コンピューティング環境にログオンした際に、前記リモートクライアント装置にインストールされているプリンタドライバの情報を取得することを特徴とする請求項1〜3のいずれかに記載のサーバ装置。
  5. 前記リモートクライアント装置が前記サーバ・ベースド・コンピューティング環境にログオフした際に、前記インストール手段により作成された論理プリンタを削除する削除手段を有することを特徴とする請求項4記載のサーバ装置。
  6. 前記リモートクライアント装置が前記サーバ・ベースド・コンピューティング環境にログオフした際に、前記インストール手段にインストールされたプリンタドライバと、該プリンタドライバに対応して作成された論理プリンタとを削除する削除手段を有することを特徴とする請求項4記載のサーバ装置。
  7. サーバ・ベースド・コンピューティング環境を提供するサーバ装置におけるプリンタ設定方法であって、
    前記サーバ・ベースド・コンピューティング環境にログオンしているリモートクライアント装置にインストールされているプリンタドライバの情報を取得する取得ステップと、
    該取得した前記プリンタドライバの情報とサーバ装置自身にインストールされているプリンタドライバの情報とを比較し、前記リモートクライアント装置にインストールされ且つサーバ装置自身にインストールされていないプリンタドライバを特定する特定ステップと、
    該特定されたプリンタドライバのインストールモジュールを記憶手段から取得してサーバ装置自身にインストールするとともに、該プリンタドライバの論理プリンタを該論理プリンタの出力先を前記リモートクライアント上の同一のプリンタドライバの論理プリンタとして作成するインストールステップと、
    を有することを特徴とするプリンタ設定方法。
  8. 請求項7に記載されたプリンタ設定方法を実行するためのプログラム。
  9. 請求項7に記載されたプリンタ設定方法を実行するためのプログラムをコンピュータが読み取り可能に記憶した記録媒体。
JP2004345768A 2004-11-30 2004-11-30 サーバ装置およびプリンタ設定方法およびプログラムおよび記録媒体 Expired - Fee Related JP4219324B2 (ja)

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Related Child Applications (1)

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

Publications (2)

Publication Number Publication Date
JP2006155288A true JP2006155288A (ja) 2006-06-15
JP4219324B2 JP4219324B2 (ja) 2009-02-04

Family

ID=36633508

Family Applications (1)

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

Country Status (1)

Country Link
JP (1) JP4219324B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272610A (ja) * 2006-03-31 2007-10-18 Brother Ind Ltd プログラム作成装置、及びプログラム
JP2008090834A (ja) * 2006-09-29 2008-04-17 Sharp Corp ドライバ設定をリモート管理し、コンフィギュアするためのシステムおよび方法
JP2008269380A (ja) * 2007-04-23 2008-11-06 Matsushita Electric Ind Co Ltd 情報処理装置
JP2010205009A (ja) * 2009-03-04 2010-09-16 Ricoh Co Ltd 情報処理装置とプログラムとコンピュータ読み取り可能な記録媒体
JP2011186900A (ja) * 2010-03-10 2011-09-22 Fuji Xerox Co Ltd 印刷システム及び環境調査プログラム
US8405852B2 (en) 2008-02-12 2013-03-26 Ricoh Company, Ltd. Image forming system using a management apparatus to manage software components
US8422040B2 (en) 2008-01-30 2013-04-16 Ricoh Company, Ltd. Image forming system and method, management apparatus, and recording medium

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272610A (ja) * 2006-03-31 2007-10-18 Brother Ind Ltd プログラム作成装置、及びプログラム
JP2008090834A (ja) * 2006-09-29 2008-04-17 Sharp Corp ドライバ設定をリモート管理し、コンフィギュアするためのシステムおよび方法
JP4671362B2 (ja) * 2006-09-29 2011-04-13 シャープ株式会社 ドライバ設定をリモート管理し、コンフィギュアするためのシステムおよび方法
US8305602B2 (en) 2006-09-29 2012-11-06 Sharp Laboratories Of America, Inc. Systems and methods for remotely managing and configuring driver settings
JP2008269380A (ja) * 2007-04-23 2008-11-06 Matsushita Electric Ind Co Ltd 情報処理装置
US8422040B2 (en) 2008-01-30 2013-04-16 Ricoh Company, Ltd. Image forming system and method, management apparatus, and recording medium
US8405852B2 (en) 2008-02-12 2013-03-26 Ricoh Company, Ltd. Image forming system using a management apparatus to manage software components
JP2010205009A (ja) * 2009-03-04 2010-09-16 Ricoh Co Ltd 情報処理装置とプログラムとコンピュータ読み取り可能な記録媒体
JP2011186900A (ja) * 2010-03-10 2011-09-22 Fuji Xerox Co Ltd 印刷システム及び環境調査プログラム

Also Published As

Publication number Publication date
JP4219324B2 (ja) 2009-02-04

Similar Documents

Publication Publication Date Title
JP5350712B2 (ja) 物理コンピュータ・システムの仮想表現へのオンデマンドのアクセス
US9043391B2 (en) Capturing and restoring session state of a machine without using memory images
US7325040B2 (en) Locally operated desktop environment for a remote computing system
JP4293234B2 (ja) シンクライアントにおける接続管理方法及び接続管理サーバ
US11240292B2 (en) Interfacing with remote content management systems
US20120011509A1 (en) Migrating Session State of a Machine Without Using Memory Images
JP4743726B1 (ja) サーバ復旧システム
JP2009251803A (ja) 情報処理装置、データ処理方法、プログラム
US20110231452A1 (en) Storage system and resource management method for storage system
JP4650850B2 (ja) サーバ装置およびプリンタ設定方法およびプログラムおよび記録媒体
JP4852734B1 (ja) サービス制御システム
JP4219324B2 (ja) サーバ装置およびプリンタ設定方法およびプログラムおよび記録媒体
JP3774684B2 (ja) 情報処理装置および情報処理装置のプリンタ設定方法およびプログラムおよび記録媒体
US8321951B2 (en) License information management apparatus, method, and program
US20130238673A1 (en) Information processing apparatus, image file creation method, and storage medium
JP6444862B2 (ja) マッピングシステムのためのシンクライアント
CN109144657B (zh) 一种跨操作系统平台的文件共享的方法和装置
JP2009020624A (ja) 管理サーバおよび管理サーバの制御方法およびプログラムおよび記録媒体
JP2018034340A (ja) 印刷ログ秘匿システム、印刷ログ秘匿方法、および印刷ログ秘匿プログラム
JP5180399B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP2009258922A (ja) 多地点のコンピュータ管理システム及び方法
JP2009037354A (ja) 帳票システムおよび帳票システムの制御方法およびプログラムおよび記録媒体
JP2012048688A (ja) 電子帳票サーバとその処理方法及びプログラム
JP5862192B2 (ja) 画像処理装置、画像処理方法及び画像処理システム
Cohen et al. Google Compute Engine: Managing Secure and Scalable Cloud Computing

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080324

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20080403

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080430

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080819

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081020

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: 20081111

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: 20081111

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

Free format text: PAYMENT UNTIL: 20111121

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20111121

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121121

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121121

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20131121

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20141121

Year of fee payment: 6

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