JP7415682B2 - プログラムセット、読取結果の取得方法および情報処理装置 - Google Patents

プログラムセット、読取結果の取得方法および情報処理装置 Download PDF

Info

Publication number
JP7415682B2
JP7415682B2 JP2020041093A JP2020041093A JP7415682B2 JP 7415682 B2 JP7415682 B2 JP 7415682B2 JP 2020041093 A JP2020041093 A JP 2020041093A JP 2020041093 A JP2020041093 A JP 2020041093A JP 7415682 B2 JP7415682 B2 JP 7415682B2
Authority
JP
Japan
Prior art keywords
program
scanner
scan
information processing
processing device
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.)
Active
Application number
JP2020041093A
Other languages
English (en)
Other versions
JP2021145184A (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.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2020041093A priority Critical patent/JP7415682B2/ja
Priority to US17/194,496 priority patent/US11283940B2/en
Publication of JP2021145184A publication Critical patent/JP2021145184A/ja
Priority to US17/654,832 priority patent/US11637938B2/en
Priority to US18/302,924 priority patent/US12126773B2/en
Priority to JP2023218992A priority patent/JP2024026523A/ja
Application granted granted Critical
Publication of JP7415682B2 publication Critical patent/JP7415682B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00209Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax
    • H04N1/00214Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of transmission
    • H04N1/0022Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of transmission involving facsimile protocols or a combination of facsimile protocols and computer data transmission protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/333Mode signalling or mode changing; Handshaking therefor
    • H04N1/33346Mode signalling or mode changing; Handshaking therefor adapting to a particular standardised protocol
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00795Reading arrangements
    • H04N1/00798Circuits or arrangements for the control thereof, e.g. using a programmed control device or according to a measured quantity
    • H04N1/00811Circuits or arrangements for the control thereof, e.g. using a programmed control device or according to a measured quantity according to user specified instructions, e.g. user selection of reading mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00912Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
    • H04N1/00938Software related arrangements, e.g. loading applications
    • H04N1/00949Combining applications, e.g. to create workflows
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32502Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device in systems having a plurality of input or output devices
    • H04N1/32523Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device in systems having a plurality of input or output devices a plurality of output devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Facsimiles In General (AREA)

Description

本明細書に開示される技術分野は、スキャナを制御するプログラムセット、読取結果の取得方法および情報処理装置に関する。
スキャナ等のデバイスと通信可能な情報処理装置において、所定の汎用的なプロトコルによってスキャナとのデータ通信を行う技術が知られている。例えば、特許文献1では、IPP(Internet Printing Protocol)というプロトコルによって情報処理装置とスキャナとがデータ通信を行う構成が開示されている。特許文献1ではさらに、IPPが汎用的なプロトコルであるがゆえに原稿の開き方向の設定という固有の機能には対応していないため、スキャナ側にて設定できるようにすることで、当該固有の機能を実現する構成が開示されている。
特開2016-111560号公報
情報処理装置が所定の汎用的な通信プロトコルによってスキャナと通信を行うには、通信先のスキャナがその所定の汎用的な通信プロトコルに対応している必要がある。そのため、情報処理装置に組み込まれたスキャンシステムが所定の汎用的な通信プロトコルを用いてデータ通信を行う場合、その所定の汎用的な通信プロトコルに対応していないスキャナを利用できない。例えば特許文献1のように情報処理装置がIPPを用いてデータ通信を行う場合、IPPに対応していないスキャナを利用することができない。
また、スキャナが所定の汎用的な通信プロトコルに対応していたとしても、スキャナ側でIPPがサポートしていない設定を利用する場合、その都度スキャナにて設定を切り替える必要があったり、スキャナのユーザインタフェースが使いづらかったりするため、ユーザの手間がかかる。AirPrint(登録商標)等の汎用的なドライバレススキャン機能を用いてスキャンを実行する場合においても、汎用的な通信プロトコルを用いるため、同様の問題がある。
本明細書は、情報処理装置からスキャナを利用する場合の、スキャナの利用可能性を高める技術を開示する。
この課題の解決を目的としてなされたプログラムセットは、第1情報処理装置のコンピュータによって実行可能なプログラムセットであって、前記プログラムセットには、第1プログラムと第2プログラムとを含み、前記第1プログラムは、第1プロトコルに対応するスキャナが前記第1情報処理装置の通信インタフェースを介して通信可能であり、かつ前記スキャナに対応する前記第2プログラムが起動していない場合に、前記コンピュータに、前記第2プログラムを起動する起動処理と、前記起動処理にて前記第2プログラムを起動した場合に、前記第2プログラムを、前記第1情報処理装置のオペレーティングシステムにスキャナとして登録する第1登録処理と、を実行させ、前記第2プログラムは、前記オペレーティングシステムに登録された前記第2プログラムが出力先として指定されたスキャンジョブを、前記第1プロトコルと異なる第2プロトコルによって、前記オペレーティングシステムが受け付けた場合、前記コンピュータに、前記スキャンジョブに基づいて、前記スキャナが対応可能な前記第1プロトコルのスキャンコマンドを、前記通信インタフェースを介して前記スキャナに送信する送信処理と、前記送信処理にて送信された前記スキャンコマンドに応じて前記スキャナが原稿を読み取った読取結果を、前記通信インタフェースを介して前記第1プロトコルによって受信する受信処理と、を実行させる、ことを特徴としている。
本明細書に開示されるプログラムセットによれば、第1情報処理装置は、第1プロトコルに対応するスキャナに対応する第2プログラムが起動していない場合、第2プログラムを起動して、オペレーティングシステム(以下、「OS」とする)にスキャナとして登録する。これにより、OSにて第2プログラムが選択可能になる。さらに、第2プロトコルによってOSが受け付けたスキャンジョブであって、第2プログラムを出力先として指定したスキャンジョブを受け付けた際、第2プログラムは、そのスキャンジョブに基づいて、第1プロトコルによってスキャンコマンドをスキャナに送信し、スキャナからその読取結果を受信する。これにより、第2プロトコルに対応しないスキャナであっても第1情報処理装置から読み取り指示が可能であり、読取結果を受信できる。
上記の機能を実現するための制御方法、情報処理装置、アプリケーションプログラムを格納するコンピュータにて読取可能な記憶媒体も、新規で有用である。
本明細書に開示されるプログラムセットによれば、情報処理装置からスキャナを利用する場合の、スキャナの利用可能性を高める技術が実現される。
実施の形態にかかるスキャンシステムの概略構成図である。 スキャンサーバの起動と登録の手順を示すシーケンス図である。 プルスキャンの手順を示すシーケンス図である。 プッシュスキャンの手順を示すシーケンス図である。 プルスキャンとプッシュスキャンとの両方を実行可能なプログラムの手順を示すシーケンス図である。 第2の形態におけるスキャンサーバの起動と登録の手順を示すシーケンス図である。 第2の形態におけるプッシュスキャンの手順を示すシーケンス図である。
以下、スキャンシステムを具体化した第1の形態について、添付図面を参照しつつ詳細に説明する。本形態は、複数台のパーソナルコンピュータ(以下、「PC」とする)とそれらのPCに接続されるスキャナとを含むスキャンシステムを開示するものである。
本形態のスキャンシステム100は、図1に示すように、PC1と、PC2と、スキャナ3と、を含み、これらが互いに共通のネットワークに接続されたシステムである。PC1およびPC2は、スキャナ3へのスキャン実行指示の送信、スキャナ3からの画像データの受信、受信した画像データの編集、等を行う装置である。PC1とPC2とは、いずれも情報処理装置の一例であり、PC1は、第1情報処理装置の一例であり、PC2は、第2情報処理装置の一例である。なお、PC2は、PC1と同様の構成や機能を有する装置であり、以下では、区別の必要がない範囲でPC1について代表して説明する。PC1やPC2に代えて、例えば、スマートフォン、タブレットコンピュータであってもよい。
本形態のPC1は、図1に示すように、CPU11と、メモリ12と、を含むコントローラ10を備えている。また、PC1は、ユーザインタフェース(以下、「ユーザIF」とする)13と、通信インタフェース(以下、「通信IF」とする)14と、を備え、これらがコントローラ10に電気的に接続されている。なお、図1中のコントローラ10は、PC1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1に存在する単一のハードウェアを表すとは限らない。
CPU11は、メモリ12から読み出したプログラムに従って、また、ユーザの操作に基づいて、各種の処理を実行する。CPU11は、コンピュータの一例である。メモリ12は、PC1を起動するための起動プログラム、スキャナを使用するための各種のアプリケーションプログラム(以下、「アプリ」とする)等の各種のプログラムや、画像データ、文書データ等の各種のデータ、各種の設定情報が記憶される記憶領域である。メモリ12は、各種の処理が実行される際の作業領域としても利用される。
ユーザIF13は、例えば、タッチパネルであり、ユーザに情報を報知するための画面を表示するハードウェアと、ユーザによる入力操作を受け付けるハードウェアと、を含む。なお、ユーザIF13は、表示機能を有するディスプレイと、入力受付機能を有するキーボード、マウス、トラックボール等と、の組み合わせであっても良い。
通信IF14は、PC2、スキャナ3等の外部装置と通信を行うためのハードウェアを含む。通信IF14の通信規格は、例えば、イーサネット(登録商標)、Wi-Fi(登録商標)などを含み、無線通信と有線通信とを含んでも良いし、複数の通信規格に対応する複数の構成を含んでいても良い。本形態のスキャンシステム100では、PC1とPC2との通信方式と、PC1とスキャナ3との通信方式と、PC2とスキャナ3との通信方式とは、それぞれ異なる方式であっても良い。
PC1のメモリ12には、図1に示すように、OS41と、スキャンアプリ42と、管理プログラム43と、スキャンサーバプログラム44と、を含む、各種のデータや各種のプログラムが記憶されている。OS41には、汎用スキャン制御プログラム45が組み込まれている。OS41は、例えば、iOS(登録商標)、Android(登録商標)、マイクロソフトウィンドウズ(登録商標)、macOS(登録商標)、Linux(登録商標)である。管理プログラム43は、第1プログラムの一例であり、スキャンサーバプログラム44は、第2プログラムの一例である。管理プログラム43とスキャンサーバプログラム44との組は、プログラムセットの一例である。
スキャンアプリ42は、例えば、スキャンを実行させる装置の指定、読取結果の保存場所の指定、スキャン実行の指示、各種のスキャン設定等のユーザの指示を受け付ける。スキャンアプリ42は、さらに、スキャナから受信した読取結果の画像の表示や編集の指示を受け付けても良い。
汎用スキャン制御プログラム45は、所定の規格に基づいてスキャナの動作を制御するプログラムである。汎用スキャン制御プログラム45は、OS41の有するスキャン制御機能を利用するプログラムであり、OS41によって提供される標準のプログラムである。汎用スキャン制御プログラム45は、所定の規格をサポートする複数のモデルのスキャナに対応する汎用のプログラムである。そのため、汎用スキャン制御プログラム45に対応する機能を備えたスキャナであれば、どのメーカのスキャナであっても、規格に基づくスキャンを実行できる。汎用スキャン制御プログラム45を利用したスキャンシステムとしては、例えば、AirPrint、Mopria(登録商標)がある。
なお、汎用スキャン制御プログラム45は、複数のモデルに対応する汎用のプログラムであることから、受け付け可能なスキャン設定が一般的なものに限られる。そのため、汎用スキャン制御プログラム45は、指定されたスキャナにて実行可能な全てのスキャン設定を受け付けるとは限らない。
本形態のOS41は、スキャナの制御を汎用スキャン制御プログラム45を用いて行い、例えば、個別の機種に対応するスキャナドライバ等の個別の制御プログラムのインストールを受け付けないバージョンのものである。本形態のスキャンアプリ42は、汎用スキャン制御プログラム45に対応しており、汎用スキャン制御プログラム45に対応する所定の汎用プロトコルでOS41にスキャンジョブを渡すことができる。OS41は、渡されたスキャンジョブに基づいて、汎用スキャン制御プログラム45を利用してスキャンコマンドを生成し、生成したスキャンコマンドを指定されたスキャナに汎用プロトコルで送信する。汎用プロトコルは、例えば、IPPであり、第2プロトコルの一例である。
OS41は、また、PC1に接続されたスキャナが汎用スキャン制御プログラム45に対応可能か否かを判断し、対応可能なスキャナの情報をメモリ12に登録する機能を備えている。スキャンアプリ42は、メモリ12に登録されているスキャナから、スキャンを実行させる装置の選択を受け付ける。なお、本形態のスキャンシステム100のスキャナ3は、一例として、汎用スキャン制御プログラム45が用いる規格をサポートしておらず、汎用プロトコルに対応していない。つまり、スキャナ3は、OS41によって生成されたスキャンコマンドを受信できない、あるいは、受信したとしても正しく処理できない。あるいは、本形態のスキャンシステム100のスキャナ3は、一例として、汎用スキャン制御プログラム45が用いる規格をサポートしており、汎用プロトコルにも対応しているが、汎用スキャン制御プログラム45が用いる規格ではサポートされていない機能を有している。
管理プログラム43は、スキャナ3の動作やスキャンサーバプログラム44の動作を管理するプログラムである。具体的には、管理プログラム43は、スキャナ3に対応するスキャンサーバプログラム44を起動させ、スキャンサーバプログラム44によって構成されるスキャンサーバを仮想のスキャナとしてOS41に登録させるプログラムである。スキャンサーバが仮想のスキャナとしてOS41に登録されれば、スキャンアプリ42等では、その仮想のスキャナ、すなわち、スキャンサーバプログラム44をスキャナとして選択可能になる。
スキャンサーバプログラム44は、スキャナに代わって、OS41が生成したスキャンコマンドを受け取るプログラムである。スキャンサーバプログラム44は、スキャナ3のモデルに対応するプログラムであり、スキャナ3が対応可能なプロトコルである専用プロトコルにも汎用プロトコルにも対応可能である。専用プロトコルは、第1プロトコルの一例である。本形態のスキャンシステム100では、OS41に登録されている仮想のスキャナが選択された場合、OS41は、生成したスキャンコマンドをスキャンサーバプログラム44に渡す。
本形態のスキャンシステム100のスキャナ3は、PC1やPC2との通信機能と、原稿の画像を読み取って画像データを取得する画像読取機能と、を有する装置である。スキャナ3は、スキャン単機能の装置に限らず、例えば、複合機、コピー機、FAX装置であってもよい。
続いて、本形態のスキャンシステム100において、PC1にて実行されるスキャン処理の手順について、図2~図5のシーケンス図を参照して説明する。なお、以下の説明における処理およびフローチャートの各処理ステップは、基本的に、管理プログラム43やスキャンサーバプログラム44などのプログラムに記述された命令に従ったCPU11の処理を示す。CPU11による処理は、PC1のOS41の他のモジュールとデータ交換するためのIF(APIとも呼ばれる)を用いたハードウェア制御も含む。なお、本明細書では、OS41の記載を省略して各プログラムの動作を説明する場合もある。
まず、スキャンの実行前に行う仮想スキャナの登録手順について、図2のシーケンス図を参照して説明する。まず、管理プログラム43が起動される(S101)。管理プログラム43は、例えば、PC1の起動時に自動的に起動される。管理プログラム43は、ユーザの指示に基づいて起動されても良い。
管理プログラム43は、起動されるとまず、PC1と同じスキャンシステム100に含まれる他のPC等にて動作中のスキャンサーバを検索する(S102)。本形態では、管理プログラム43は、スキャンシステム100のPC2に対して、スキャンサーバプログラム44を実行中であるか否かを問い合わせる。同一システムに接続されるPC等が複数ある場合には、PC1の管理プログラム43は、他の全てのPC等に問い合わせる。
そして、管理プログラム43は、PC2から応答情報を受信する(S103)。なお、PC1やPC2のスキャンサーバプログラム44は、実行中に他の装置から問い合わせを受信した場合、実行中であることを示す情報を応答する。実行中を示す情報を受信したと判断した場合([有])、管理プログラム43は、OS41にPC2のスキャンサーバプログラム44を示す情報を渡し(S104)、OS41にスキャナとして登録することを要求する。S104は、第2登録処理の一例である。
管理プログラム43は、さらに、PC2のスキャンサーバプログラム44の保存先リストに自装置の情報を加えるよう要求するリスト登録要求と、自装置の識別情報とをPC2に送信する(S105)。S105は、第2登録要求処理の一例である。保存先リストは、スキャナ3にて原稿の画像を読み取った読取結果を、このスキャンサーバプログラム44を介して受け取って保存する装置を登録するリストである。
OS41は、S104にて受け取った情報に基づいて、PC2にて実行中のスキャンサーバプログラム44をスキャナとして登録する(S106)。これにより、スキャンアプリ42等にてスキャナの選択指示を受け付けた場合、OS41は、PC2にて実行中のスキャンサーバプログラム44の情報を、スキャナの選択肢の1つとしてスキャンアプリ42等に渡す。PC2で実行中のスキャンサーバプログラム44を利用できることで、スキャナ3を複数のPCで共用するスキャンシステム100全体として、複数のスキャンサーバプログラム44を起動する必要が無く、システム全体として無駄が少ない。
一方、実行中を示す情報を受信しなかったと判断した場合([無])、管理プログラム43は、自装置が備えるスキャンサーバプログラム44の起動を指示する(S107)。S107は、起動処理および起動ステップの一例である。例えば、PC2が起動されていないなど、所定の時間内に応答情報を受信しなかった場合も、管理プログラム43は、実行中を示す情報を受信しなかったと判断する。
スキャンサーバプログラム44は、起動されると、スキャナ3のモデル情報や能力情報など、自身が備える情報に基づく初期設定を実行する(S108)。なお、スキャンサーバプログラム44は、インストール時や前回の実行時にスキャナ3の情報を取得し、自身が管理する記憶領域に記憶している。スキャンサーバプログラム44は、起動が完了すると、初期設定の設定情報を管理プログラム43に通知する(S109)。管理プログラム43は、受け取った情報に基づいて、OS41にスキャンサーバプログラム44の情報を渡し(S110)、OS41にスキャナとして登録することを要求する。S110は、第1登録処理の一例であり、登録処理および登録ステップの一例である。
管理プログラム43は、さらに、起動したスキャンサーバプログラム44に、保存先リストを作成して、自装置の情報を登録するよう要求するリスト登録要求を渡す(S111)。S111は、第1登録要求処理の一例である。スキャンサーバプログラム44は、受け取った要求に基づいて、自装置の装置識別情報を保存先リストに登録する(S112)。S112は、リスト登録処理の一例である。自身の管理する保存先リストが既に有れば、スキャンサーバプログラム44は、その保存先リストに要求された情報を登録する。また、OS41は、S110にて管理プログラム43から受け取った情報に基づいて、起動したスキャンサーバプログラム44をスキャナとして登録する(S113)。S106やS113では、スキャナ3を示す名称をつけてOS41に登録させるとよい。
PC1にて実行中のスキャンサーバプログラム44は、PC2等のスキャンシステム100に接続されている他の装置から、スキャンサーバの検索やリスト登録要求を受け付ける場合がある。スキャンサーバの検索を受け付けた場合、スキャンサーバプログラム44は、自身が起動中であることを示す情報をPC2に送信する(S114)。また、リスト登録要求を受け付けた場合、スキャンサーバプログラム44は、リスト登録要求を送信した装置の装置識別情報を、自身の備える保存先リストに登録する(S115)。S115は、リスト登録処理の一例である。
これにより、PC1のユーザがスキャナ3を利用してスキャンを行わせる準備が整った。なお、PC2にてスキャンサーバプログラム44が実行中であって、そのスキャンサーバプログラム44の情報をOS41にスキャナとして登録した場合、PC2がシャットダウンされるとスキャナの情報が無くなってしまう。PC1の管理プログラム43は、例えば、PC2のスキャンサーバプログラム44を仮想のスキャナとしてOS41に登録した後、定期的にPC2のスキャンサーバプログラム44と通信を行い、実行中のスキャンサーバプログラム44が見つからない場合、他のPCにて実行中のスキャンサーバプログラム44を検索し、見つからなければPC1のスキャンサーバプログラム44を起動させるとしても良い。
また、保存先リストは、スキャンサーバプログラム44の起動時に作成する代わりに、スキャンサーバプログラム44の管理する記憶領域に恒久的に保存しても良い。例えば、スキャンシステム100に含まれるPC等(本形態では、PC1とPC2)の情報を予め登録した保存先リストを作成しておいても良い。
次に、前述した図2の手順が終了し、PC1またはPC2にてスキャンサーバプログラム44が実行中である状態で、PC1のスキャンアプリ42にてスキャナ3を利用する手順について説明する。スキャンアプリ42は、スキャナの選択指示を受け付けるとOS41に登録されているスキャナの情報を表示し、ユーザの選択を受け付ける。図2のS106またはS113にて、実行中のスキャンサーバプログラム44がOS41に登録されていることから、スキャンサーバプログラム44が選択肢の1つとして表示される。
スキャンを実行させる装置としてスキャンサーバプログラム44が選択された状態で、PC1のスキャンアプリ42にてスキャンの実行指示を受け付けたことによるスキャンの実行手順、いわゆるプルスキャンの手順について、図3のシーケンス図を参照して説明する。
スキャンアプリ42は、スキャンの実行指示を受け付けると(S201)、スキャンジョブをOS41に渡す(S202)。OS41は、受け取ったスキャンジョブに基づいて、汎用スキャン制御プログラム45を用いて汎用プロトコルのスキャンコマンドを生成し、生成したスキャンコマンドを、選択された装置であるスキャンサーバプログラム44に渡す(S203)。これにより、スキャンサーバプログラム44は、スキャンコマンドを取得する。S203は、取得処理および取得ステップの一例である。
スキャンサーバプログラム44は、スキャナ3に状態を確認する指示を送信する(S204)。スキャンサーバプログラム44は、専用プロトコルに対応しており、スキャナ3と専用プロトコルでの通信が可能である。スキャナ3は、受信した状態確認指示に基づいて、自装置の状態を示す情報を、状態確認指示を送信した装置のスキャンサーバプログラム44に応答する(S205)。スキャナの状態としては、例えば、利用可能、利用不可、が含まれ、スキャナ3は、さらに詳細な情報を応答可能であっても良い。
スキャンサーバプログラム44は、利用可能を示す応答情報を受信したと判断した場合([OK])、S203にて受け取った汎用プロトコルのスキャンコマンドを専用プロトコルのスキャンコマンドに変換する(S206)。スキャンサーバプログラム44は、変換後のスキャンコマンドを、専用プロトコルにてスキャナ3に送信する(S207)。S207は、送信処理および送信ステップの一例である。
スキャナ3は、S207にて受信した専用プロトコルのスキャンコマンドに基づいて、スキャンを実行する(S208)。S208では、スキャナ3は、原稿をセットしたユーザによるスキャン開始指示を受けてスキャンを実行する。そして、スキャナ3は、原稿を読み取った読取結果を、スキャンコマンドを送信した装置のスキャンサーバプログラム44に送信する(S209)。
スキャンサーバプログラム44は、S209にてスキャナ3から送信される読取結果を受信する。S209は、受信処理および受信ステップの一例である。S209の通信も専用プロトコルでの通信である。スキャンサーバプログラム44は、受信した読取結果に画像補正を施す(S210)。S210は、画像補正処理の一例である。画像補正として、スキャンサーバプログラム44は、例えば、文字認識処理、モアレ除去処理、を実行する。スキャンサーバプログラム44は、画像補正を行うか否かについて、ユーザの指示を受け付けても良い。画像補正を行えば、より好適な画像データを取得できる。
スキャンサーバプログラム44は、補正後の画像データを、S203にてスキャンコマンドを送信した装置のOS41に渡す(S211)。OS41は、受け取った画像データを、S202にてスキャンジョブを受け付けたプログラムであるスキャンアプリ42に渡す(S212)。これにより、スキャンアプリ42は、スキャナ3による読取結果を受け取る。
一方、S205にて受け取った応答が利用可能ではなかった場合、あるいは、所定の時間が経過してもスキャナ3から応答を受信しなかった場合([NG])、スキャンサーバプログラム44は、スキャナ3がエラー状態であることを示すエラー通知をOS41に返す(S213)。OS41は、スキャンサーバプログラム44からエラー通知を受け取った場合、ユーザIF13にエラーを報知するメッセージを表示させる(S214)。
これにより、スキャナ3に代わるスキャンサーバプログラム44を選択することで、汎用プロトコルに対応していないスキャナ3であっても、スキャンアプリ42からスキャナ3を利用して読取結果を取得できる。なお、読取結果の画像補正やエラーの場合のエラー通知は、行わなくても良い。
次に、スキャナ3にスキャンを実行させる手順について、さらに、図4のシーケンス図を参照して説明する。図4は、スキャナ3にてスキャンの実行指示を受け付けたことによるスキャンの実行手順、いわゆるプッシュスキャンの手順を示すシーケンス図である。汎用スキャン制御プログラム45はプッシュスキャン機能をサポートしておらず、起動されているスキャンサーバプログラム44が用いられる。
スキャナ3は、スキャンコマンドを受信していない状態で、自装置の操作パネルにてスキャン開始の指示を受け付けた場合(S301)、スキャンシステム100のネットワークを介して、実行中の自装置と適切に通信可能なPCの検索要求を送信する(S302)。つまり、スキャナ3は、専用プロトコルでの通信が可能なPCを検索する。スキャンサーバプログラム44は、スキャナ3からの検索要求を受けて、自装置の装置識別情報を応答する(S303)。S303は、応答処理の一例である。
S303では、スキャンサーバプログラム44は、自身の管理する記憶領域に保存されている保存先リストをもスキャナ3に渡す。保存先リストは、例えば、図2のS111にて作成されるリストであり、スキャンサーバプログラム44を用いてスキャナ3と通信する可能性のある装置のリストである。
スキャナ3は、受け取った保存先リストに基づいて、読取結果の保存先を示す保存先情報の一覧を自装置の操作パネルに表示し(S304)、ユーザの選択を受け付ける(S305)。保存先情報は、保存先リストそのものであっても良いし、保存先リストをユーザに分かり易い情報に変換したものであっても良い。さらに、スキャナ3は、ユーザのスキャン開始指示を受け付けて、原稿の画像をスキャンして読み取り(S306)、読取結果とS305にて受け付けた保存先情報とをスキャンサーバプログラム44に送信する(S307)。
スキャンサーバプログラム44は、受信した読取結果と保存先情報とを関連付けて、自身が管理するメモリ領域に記憶する(S308)。S308は、記憶処理の一例である。スキャナ3に登録されている保存先を示す保存先情報を読取結果と共に受信することで、スキャンサーバプログラム44は、PC1等の装置ごとに読取結果を区別して記憶できる。メモリ領域は、スキャンサーバプログラム44が実行中である装置のメモリ(12または22、図1参照)に設けられている。
管理プログラム43は、定期的に、または、ユーザの指示を受けて、自装置を保存先に指定した読取結果を要求する出力要求を、実行中のスキャンサーバプログラム44に渡す(S309)。管理プログラム43とスキャンサーバプログラム44とが、同じ装置で実行中であれば、管理プログラム43は、スキャンサーバプログラム44に出力要求を入力する。管理プログラム43とは異なる装置でスキャンサーバプログラム44が実行中であれば、管理プログラム43は、出力要求に自装置の識別情報を付加して、スキャンサーバプログラム44を実行している装置に出力要求を送信する。
出力要求を受け取ったスキャンサーバプログラム44は、自身が管理するメモリ領域に、出力要求を行った管理プログラム43宛ての読取結果が有るか否かを判断する(S310)。すなわち、スキャンサーバプログラム44は、受け取った出力要求に付加されている識別情報と読取結果に付加されている保存先情報とが、一致する読取結果の有無を判断する。
一致する読取結果が有ると判断した場合([有])、スキャンサーバプログラム44は、その読取結果の要求を行った管理プログラム43に渡す(S311)。スキャンサーバプログラム44は、該当する読取結果が複数ある場合には、全ての読取結果を渡す。スキャナ3からプッシュされた読取結果は、一旦、スキャンサーバプログラム44によって記憶され、後から本当の保存先に保存される構成であるため、スキャンサーバプログラム44が読取結果を受信する際、本当の保存先が起動していなくてもよい。なお、出力要求に付加されている識別情報と読取結果に付加されている保存先情報とが一致する読取結果が無いと判断した場合、スキャンサーバプログラム44は、無いことを示す情報を返しても良い。
管理プログラム43は、受け取った読取結果をファイルとして保存する(S312)。S312は、保存処理の一例である。管理プログラム43は、ファイルが作成されたことを通知しても良い。また、管理プログラム43は、自身の管理するフォルダなど予め決めたフォルダに保存しても良いし、ユーザの指示に基づいて保存先のフォルダを決定しても良い。これにより、スキャナ3にて読取指示を行った原稿の画像の画像データが、管理プログラム43によって適切に保存されることから、いわゆるプッシュスキャンが実現されている。また、管理プログラム43が読取結果をファイルとして保存することで、ユーザは、スキャナ3からプッシュ送信された読取結果を、当該ファイルが保存されるフォルダ内にて簡単に見つけて確認できる。
スキャンサーバプログラム44は、渡し済みの読取結果を、自身の管理するメモリ領域から削除する(S313)。これにより、メモリ領域のデータ量を節約できる。なお、スキャンサーバプログラム44は、管理プログラム43での保存が完了したことを確認した後に削除しても良いし、一定期間を超えてもメモリ領域に残っている場合に削除しても良いし、ユーザの指示に基づいて削除しても良い。
図4では、管理プログラム43が読取結果を受け取るプッシュスキャンの手順について説明したが、プッシュスキャンの読取結果をスキャンアプリ42が受け取るようにすることもできる。この手順について、図5のシーケンス図を参照して説明する。なお、以下では、図3または図4と同じ手順については、同じ符号を付して説明を省略する。
この手順では、まず、図3に示したプルスキャンの手順と同様に、スキャナ3に代わるスキャンサーバプログラム44が選択された状態で、PC1のスキャンアプリ42にてスキャンの実行指示を受け付ける(S201)。スキャンアプリ42は、汎用プロトコルにてスキャンジョブをOS41に渡す(S202)。OS41は、スキャンコマンドを生成してスキャンサーバプログラム44に渡す(S203)。
スキャンサーバプログラム44は、受け取ったスキャンコマンドを送信した装置の識別情報が付加された読取結果が、自身の管理するメモリ領域にあるか否かを判断する(S401)。S401は、図4のS310と同様の処理であるが、スキャンサーバプログラム44は、出力要求に添付されている識別情報に基づいて判断する代わりに、スキャンコマンドの送信元の装置の情報に基づいて判断する。OS41とスキャンサーバプログラム44とが同じ装置で実行中であれば、スキャンサーバプログラム44は、自装置の識別情報が付加された読取結果の有無を判断する。
なお、プッシュスキャンを行うユーザは、S201のスキャン指示を行う前に、スキャナ3にて原稿の読み取りを実行しておく必要がある。つまり、プッシュスキャンの場合には、図4のS301~S308は、実行済みである。この場合、スキャンサーバプログラム44は、S313の読取結果の削除は行わず、自身の管理するメモリ領域に記憶している。
スキャンサーバプログラム44は、該当する読取結果が有ると判断した場合([有])、その読取結果をスキャンコマンドを出力したOS41に渡す(S402)。S402は、読取結果応答処理の一例である。スキャンサーバプログラム44がスキャンアプリ42とは別の装置で実行されている場合、スキャンサーバプログラム44は、スキャンコマンドを送信した装置へ読取結果を送信する。
読取結果を受け取ったOS41は、受け取った読取結果を、スキャンアプリ42に渡す(S403)。つまり、スキャナ3にて予めスキャンを実行させておくことで、スキャンアプリ42を利用して読取結果を取得できる。
スキャンサーバプログラム44は、該当する読取結果が無いと判断した場合([無])、図3に示したプルスキャンの手順と同様の手順を実行する。すなわち、スキャンサーバプログラム44は、スキャナ3に状態確認を送信し(S204)、スキャナ3から応答を得る(S205)。応答がOKであれば([OK])、スキャンサーバプログラム44は、受け取ったスキャンコマンドを変換して(S206)、変換後のスキャンコマンドをスキャナ3に送信する(S207)。この図のS207も、送信処理および送信ステップの一例である。
スキャナ3は、受信したスキャンコマンドに基づいてスキャンを実行し(S208)、読取結果をスキャンサーバプログラム44に送信する(S209)。スキャンサーバプログラム44は、受け取った読取結果をスキャンコマンドを出力したOS41に渡す(S404)。S404は、S402と同様の処理である。読取結果を受け取ったOS41は、受け取った読取結果を、スキャンアプリ42に渡す(S405)。S405は、S403と同様の処理である。なお、S402やS404の前にも、スキャンサーバプログラム44は、画像補正を行っても良い。
つまり、スキャンサーバプログラム44は、スキャンコマンドを受信した場合、プッシュスキャンの読取結果を記憶していればその読取結果を返し、記憶していなければスキャナ3にスキャンコマンドを送信する。スキャンアプリ42を利用するユーザにとっては、どちらの場合にも読取指示を示す操作を行うだけで良く、操作性に優れる。スキャンサーバプログラム44がスキャンアプリ42とは別の装置で実行されていても、装置の識別情報と保存先情報とに基づいて読取結果の保存先を判断できることから、適切な保存先に読取結果を渡すことができる。
一方、スキャナ3からのOKの応答を得られなかった場合([NG])、スキャンサーバプログラム44は、エラー通知をOS41に返し(S213)、OS41は、ユーザIF13にエラーを報知するメッセージを表示させる(S214)。
これにより、汎用プロトコルに対応していないスキャナ3であっても、汎用スキャン制御プログラム45によるスキャンコマンドに基づくスキャンを実行し、PC1やPC2のスキャンアプリ42にて読取結果を取得できる。また、プッシュスキャンに対応していない汎用スキャン制御プログラム45を用いる場合でも、擬似的にプッシュスキャンと同様の処理を実現できる。
なお、スキャンサーバプログラム44は、PC1やPC2の起動中常時実行されていても良いし、例えば、ユーザの終了指示に基づいて終了するとしても良い。スキャンサーバプログラム44は、終了前に、自身を登録している管理プログラム43に終了を通知しても良い。
以上、詳細に説明したように、本形態のスキャンシステム100によれば、管理プログラム43は、専用プロトコルに対応したスキャナ3がシステムに含まれている場合、スキャナ3に対応するスキャンサーバプログラム44を起動して、起動したスキャンサーバプログラム44をOS41に登録する。これにより、OS41においてスキャナとしてスキャンサーバプログラム44が選択可能になる。さらに、OS41は、スキャンサーバプログラム44が出力先として指定されたスキャンジョブを受け付けた際、そのスキャンジョブに基づくスキャンコマンドをスキャンサーバプログラム44に渡す。スキャンサーバプログラム44は、専用プロトコルでスキャンコマンドをスキャナ3に送信し、スキャナ3から読取結果を受信して、OS41に返す。これにより、汎用プロトコルに対応しないスキャナ3であっても、スキャンアプリ42等から読取指示が可能であり、読取結果を取得できる。
次に、スキャンシステムを具体化した第2の形態について、添付図面を参照しつつ詳細に説明する。本形態は、第1の形態と同じハードウェア構成のスキャンシステムであって、スキャンサーバプログラム44を複数のPCで共用しないスキャンシステム100を開示するものである。つまり、本形態のスキャンシステム100では、スキャナ3を利用するPCは、それぞれ自身のスキャンサーバプログラム44を利用する。以下では、第1の形態と同じ構成や手順については、第1の形態と同じ符号を付して説明を省略する。
本形態のスキャンシステム100における仮想スキャナの登録手順について、図6のシーケンス図を参照して説明する。管理プログラム43が起動される(S101)と、管理プログラム43は、他のPCを検索せずに自装置のスキャンサーバプログラム44を起動する(S107)。
スキャンサーバプログラム44は、初期設定を行い(S108)、初期設定の設定情報を管理プログラム43に通知する(S109)。管理プログラム43は、スキャンサーバプログラム44から受け取った情報に基づいて、OS41にスキャンサーバプログラム44の情報を渡す(S110)。OS41は、管理プログラム43から受け取った情報に基づいて、スキャンサーバプログラム44をスキャナとして登録する(S113)。
本形態では、後述するように、スキャンサーバプログラム44が受け取る読取結果は、自装置宛てのデータに限られる。そのため、PC1のスキャンサーバプログラム44は、保存先リストを生成する必要はなく、他のPCからのリスト登録要求を受け付けることもない。なお、PC2にてスキャナ3を利用したいユーザは、PC1と同様に、PC2にて管理プログラム43を起動させ、PC2のスキャンサーバプログラム44を起動させて、PC2のOS51に登録させる。
図6の手順の後、PC1にてスキャナ3を利用する場合の手順について説明する。いわゆるプルスキャンの手順は、図3のシーケンス図にて説明した手順と同じ手順である。すなわち、スキャンサーバプログラム44は、スキャナ3と専用プロトコルでの通信を行い、スキャナ3の状態を確認して(S204~S205)、スキャンコマンドを送信する(S206~S207)。スキャナ3は、読取結果をスキャンサーバプログラム44に送信する(S208~S209)。スキャンサーバプログラム44は、読取結果を受信して、自装置のOS41に渡す(S211)。なお、スキャンサーバプログラム44は、画像補正を行っても良い。
次に、いわゆるプッシュスキャンの手順について、図7のシーケンス図を参照して説明する。図7は、PC1とPC2とのそれぞれにて図6の手順が終了しており、PC1のスキャンサーバプログラム44もPC2のスキャンサーバプログラム44も実行中である場合のシーケンス図である。
スキャナ3は、操作パネルにてスキャン開始の指示を受け付け(S301)、スキャンシステム100の各PCに対して検索要求を送信する(S302)。S302の検索要求は、PC1のスキャンサーバプログラム44にもPC2のスキャンサーバプログラム44にも渡される。検索要求を受けた各スキャンサーバプログラム44は、それぞれスキャナ3に応答する。PC1のスキャンサーバプログラム44は、PC1の通信IF14を介して、スキャナ3に応答する(S501)。PC2のスキャンサーバプログラム44は、PC2の通信IF24を介して、スキャナ3に応答する(S502)。S501およびS502は、応答処理の一例である。
スキャナ3は、受信した応答に基づいて、選択可能な装置としての保存先情報を一覧表示する(S304)。PC1のスキャンサーバプログラム44からもPC2のスキャンサーバプログラム44からも応答を受けたスキャナ3は、保存先情報として、PC1とPC2とを選択可能に表示する。スキャナ3は、表示した一覧からユーザの選択を受け付け(S305)、ユーザのスキャン開始指示を受け付けて、原稿の画像を読み取る(S306)。
S305にて受け付けた選択が、PC1であれば([PC1])、スキャナ3は、読取結果をPC1のスキャンサーバプログラム44に送信する(S503)。PC1のスキャンサーバプログラム44は、受け取った読取結果をメモリ12に保存する(S504)。本形態では、スキャンサーバプログラム44は、自装置が送信先である読取結果のみを受け取る。従って、スキャナ3は、読取結果に保存先情報を付加して送信する必要はない。また、管理プログラム43がスキャンサーバプログラム44から読取結果を受け取る必要もない。
S305にて受け付けた選択が、PC2であれば([PC2])、スキャナ3は、読取結果をPC2のスキャンサーバプログラム44に送信する(S505)。PC2のスキャンサーバプログラム44は、受け取った読取結果をメモリ22に保存する(S506)。その後、図4に示したS309~S311およびS313の処理を実行しても良いし、図5に示した処理を実行しても良い。
以上、詳細に説明したように、本形態のスキャンシステム100によっても、汎用プロトコルに対応しないスキャナ3に対して、スキャンアプリ42等から読取指示が可能であり、読取結果を取得できる。また、汎用スキャン制御プログラム45が対応していないプッシュスキャンを擬似的に実現できる。本形態では、第1の形態に比較して、PC1とPC2との間の通信が不要であり、通信負荷が小さい。一方、第1の形態では、例えば、PC2のスキャンサーバプログラム44を利用することで、PC1の処理の負荷は軽減される。
なお、各実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、各形態を構成するPCやプリンタの台数は、図示の例に限らない。例えば、スキャンシステム100は、2台以上のスキャナを含んでいても良く、汎用スキャン制御プログラム45に対応可能なスキャナが含まれていても良い。また、スキャンサーバプログラム44を備えないPCが含まれていても良い。
また、例えば、プッシュスキャンの手順ではスキャナ3は読取結果をスキャンサーバプログラム44に送信し、スキャンサーバプログラム44が自身の管理するメモリ領域に記憶するとしたが、スキャナ3のメモリに記憶しても良い。その場合、スキャンサーバプログラム44は、管理プログラム43またはOS41から読取結果の要求を受けてスキャナ3と通信し、スキャナ3のメモリに読取結果があるか否かを判断しても良い。
また、例えば、スキャナ3は、保存先リストをスキャンサーバプログラム44から受け取る代わりに、自装置にて登録を受け付けて予め記憶させておいても良い。例えば、スキャナ3の操作パネル等によるスキャナ3への直接入力にて保存先リストの登録を受け付けても良いし、スキャンアプリ42等から受信して記憶させても良い。一方、スキャナ3がスキャンサーバプログラム44から保存先リストを受け取る構成であれば、予めスキャナ3に記憶させておく必要はない。
また、例えば、スキャンサーバプログラム44は補正処理を行わなくても良い。補正処理を行う別のプログラムがあっても良い。
また、第2の形態の場合、管理プログラム43はスキャンサーバプログラム44に含まれていても良い。つまり、スキャンサーバプログラム44が、起動されることで自身をOS41に登録する機能を有していても良い。
また、各実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
1、2 PC
3 スキャナ
11、21 CPU
12、22 メモリ
13、23 ユーザIF
14、24 通信IF
41、51 OS
43 管理プログラム
44 スキャンサーバプログラム

Claims (12)

  1. 第1情報処理装置のコンピュータによって実行可能なプログラムセットであって、前記プログラムセットには、第1プログラムと第2プログラムとを含み、
    前記第1プログラムは、第1プロトコルに対応するスキャナが前記第1情報処理装置の通信インタフェースを介して通信可能であり、かつ前記スキャナに対応する前記第2プログラムが起動していない場合に、前記コンピュータに、
    前記第2プログラムを起動する起動処理と、
    前記起動処理にて前記第2プログラムを起動した場合に、前記第2プログラムを、前記第1情報処理装置のオペレーティングシステムにスキャナとして登録する第1登録処理と、
    を実行させ、
    前記第2プログラムは、前記オペレーティングシステムに登録された前記第2プログラムが出力先として指定されたスキャンジョブを、前記第1プロトコルと異なる第2プロトコルによって、前記オペレーティングシステムが受け付けた場合、前記コンピュータに、
    前記スキャンジョブに基づいて、前記スキャナが対応可能な前記第1プロトコルのスキャンコマンドを、前記通信インタフェースを介して前記スキャナに送信する送信処理と、
    前記送信処理にて送信された前記スキャンコマンドに応じて前記スキャナが原稿を読み取った読取結果を、前記通信インタフェースを介して前記第1プロトコルによって受信する受信処理と、
    を実行させる、
    ことを特徴とするプログラムセット。
  2. 請求項1に記載するプログラムセットにおいて、
    前記第2プログラムは、前記コンピュータに、
    前記スキャンコマンドを前記スキャナに送信することなく、前記スキャナから読取結果を、前記通信インタフェースを介して前記第1情報処理装置が受信した場合、受信した前記読取結果を、前記第2プログラムが管理するメモリ領域に記憶する記憶処理を実行させる、
    ことを特徴とするプログラムセット。
  3. 請求項2に記載するプログラムセットにおいて、
    前記第2プログラムは、前記第2プログラムが出力先として指定された前記スキャンジョブを前記第2プロトコルによって前記オペレーティングシステムが受け付けた場合、前記コンピュータに、
    前記メモリ領域に前記読取結果が記憶されていない場合、前記送信処理を実行させ、
    前記メモリ領域に前記読取結果が記憶されている場合、前記送信処理を実行させず、前記メモリ領域に記憶されている前記読取結果を前記オペレーティングシステムに応答する読取結果応答処理を実行させる、
    ことを特徴とするプログラムセット。
  4. 請求項2に記載するプログラムセットにおいて、
    前記第1プログラムは、前記コンピュータに、
    前記第2プログラムに読取結果の出力要求を入力し、前記第2プログラムから前記読取結果が渡された場合に、渡された前記読取結果をファイルとして保存する保存処理を実行させ、前記第1プログラムから前記出力要求が入力された前記第2プログラムは、前記メモリ領域に記憶される前記読取結果を前記第1プログラムに渡す、
    ことを特徴とするプログラムセット。
  5. 請求項1に記載するプログラムセットにおいて、
    前記第1情報処理装置には第2情報処理装置が接続されており、前記第2情報処理装置にも前記第2プログラムが組み込まれており、
    前記第1プログラムは、前記第2情報処理装置の前記第2プログラムが起動している場合、前記コンピュータに、前記起動処理を実行させず、
    さらに前記第1プログラムは、前記第2情報処理装置の前記第2プログラムが起動していることで前記第1情報処理装置の前記第2プログラムを起動しなかった場合であって、前記第2情報処理装置の前記第2プログラムが前記第1情報処理装置の前記オペレーティングシステムに登録されていない場合、前記コンピュータに、
    前記第2情報処理装置の前記第2プログラムを、前記オペレーティングシステムにスキャナとして登録する第2登録処理を実行させる、
    ことを特徴とするプログラムセット。
  6. 請求項5に記載するプログラムセットにおいて、
    前記第2プログラムは、前記コンピュータに、
    前記スキャナからの検索要求を受信した場合に、前記第1情報処理装置を識別する装置識別情報を応答する応答処理を実行させ、前記スキャナは、読取結果の保存先を示す保存先情報を複数有することが可能であり、前記読取結果の保存先を前記複数の保存先情報の中から選択可能であり、前記第1情報処理装置を識別する前記装置識別情報を受信した後、前記第1情報処理装置あるいは前記第2情報処理装置を示す前記保存先情報が保存先に選択された場合、前記読取結果を、選択された前記保存先情報と共に前記第1情報処理装置に送信し、
    前記第2プログラムは、前記コンピュータに、
    前記スキャナから送信された読取結果を、前記通信インタフェースを介して前記第1プロトコルによって前記第1情報処理装置が受信した場合、受信した前記読取結果を、前記読取結果と共に受信した保存先情報と関連付けて、前記第2プログラムが管理するメモリ領域に記憶する記憶処理を実行させる、
    ことを特徴とするプログラムセット。
  7. 請求項6に記載するプログラムセットにおいて、
    前記第1プログラムは、前記起動処理を実行することによって前記第1情報処理装置の前記第2プログラムを起動した場合、前記コンピュータに、
    前記第1情報処理装置の前記第2プログラムにリスト登録要求を渡す第1登録要求処理を実行させ、
    さらに前記第1プログラムは、前記第2情報処理装置の前記第2プログラムが起動していることで前記第1情報処理装置の前記第2プログラムを起動しなかった場合であって、前記第2情報処理装置の前記第2プログラムが前記第1情報処理装置の前記オペレーティングシステムに登録されていない場合、前記コンピュータに、
    前記第2情報処理装置の前記第2プログラムに前記リスト登録要求を送信する第2登録要求処理を実行させ、
    さらに前記第2プログラムは、前記リスト登録要求を受信した場合、前記コンピュータに、
    前記リスト登録要求を送信した装置を識別する装置識別情報を、前記第2プログラムが有するリストに登録するリスト登録処理を実行させ、
    さらに前記第2プログラムの前記応答処理では、
    前記スキャナからの検索要求を受信した場合に、前記リストに登録されている前記装置識別情報を前記スキャナに応答し、前記応答処理による前記装置識別情報を受信した前記スキャナは、受信した前記装置識別情報をそれぞれ前記保存先情報として記憶する、
    ことを特徴とするプログラムセット。
  8. 請求項6または請求項7に記載するプログラムセットにおいて、
    前記第2プログラムは、前記第2プログラムが出力先として指定された前記スキャンジョブを前記第2プロトコルによって前記第2情報処理装置のオペレーティングシステムが受け付けた場合、前記コンピュータに、
    前記メモリ領域に前記第2情報処理装置を示す前記装置識別情報と関連付けられた前記読取結果が記憶されていない場合に、前記送信処理を実行させ、
    前記メモリ領域に前記第2情報処理装置を示す前記保存先情報と関連付けられた前記読取結果が記憶されている場合に、前記送信処理を実行させずに、前記メモリ領域に記憶されている前記第2情報処理装置を示す前記装置識別情報と関連付けられた前記読取結果を前記第2情報処理装置の前記オペレーティングシステムに応答する読取結果応答処理を実行させる、
    ことを特徴とするプログラムセット。
  9. 請求項6または請求項7に記載するプログラムセットにおいて、
    前記第1プログラムは、前記コンピュータに、
    前記第2情報処理装置の前記第2プログラムに読取結果の出力要求を送信し、前記第2プログラムから読取結果を受信した場合に、受信した前記読取結果をファイルとして保存する保存処理を実行させ、前記第1プログラムは、前記出力要求と共に前記第1情報処理装置を示す前記保存先情報を送信し、前記出力要求を受信した前記第2情報処理装置の前記第2プログラムは、前記第2プログラムが管理するメモリ領域に記憶されている前記読取結果のうち、前記出力要求と共に受信した前記第1情報処理装置を示す前記保存先情報と関連付けられた前記読取結果を、前記第1情報処理装置の前記第1プログラムに送信する、
    ことを特徴とするプログラムセット。
  10. 請求項1から請求項9のいずれか1つに記載するプログラムセットにおいて、
    前記第2プログラムは、前記コンピュータに、
    前記受信処理にて受信した前記読取結果の画像に対して補正を行う画像補正処理を実行させる、
    ことを特徴とするプログラムセット。
  11. 第1プロトコルに対応するスキャナの読取結果を、情報処理装置に取得させる読取結果の取得方法であって、
    前記スキャナが前記情報処理装置と通信可能であり、かつ前記スキャナに対応するスキャンサーバプログラムが前記情報処理装置で起動していない場合に、前記情報処理装置において前記スキャンサーバプログラムを起動する起動ステップと、
    前記起動ステップにて前記スキャンサーバプログラムを起動した場合に、起動した前記スキャンサーバプログラムを、前記情報処理装置のオペレーティングシステムにスキャナとして登録する登録ステップと、
    前記スキャンサーバプログラムが起動中、前記オペレーティングシステムに登録された前記スキャンサーバプログラムが出力先として指定されたスキャンジョブを、前記第1プロトコルと異なる第2プロトコルによって、前記オペレーティングシステムが受け付けた場合に、前記スキャンジョブを前記スキャンサーバプログラムに取得させる取得ステップと、
    前記スキャンサーバプログラムによって、前記取得ステップにて取得した前記スキャンジョブに基づいて、前記スキャナが対応可能な前記第1プロトコルのスキャンコマンドを、前記情報処理装置から前記スキャナに送信させる送信ステップと、
    前記送信ステップにて送信された前記スキャンコマンドに応じて前記スキャナが原稿を読み取った読取結果を、前記情報処理装置が前記第1プロトコルによって受信する受信ステップと、
    を含む、
    ことを特徴とする取得方法。
  12. 通信インタフェースと、
    コンピュータと、
    を備える情報処理装置において、
    前記コンピュータは、
    第1プロトコルに対応するスキャナが前記通信インタフェースを介して通信可能であり、かつ前記スキャナに対応するスキャンサーバプログラムが起動していない場合に、前記スキャンサーバプログラムを起動する起動処理と、
    前記起動処理にて前記スキャンサーバプログラムを起動した場合に、起動した前記スキャンサーバプログラムを、前記情報処理装置のオペレーティングシステムにスキャナとして登録する登録処理と、
    前記スキャンサーバプログラムが起動中、前記オペレーティングシステムに登録された前記スキャンサーバプログラムが出力先として指定されたスキャンジョブを、前記第1プロトコルと異なる第2プロトコルによって、前記オペレーティングシステムが受け付けた場合に、前記スキャンジョブを前記スキャンサーバプログラムに取得させる取得処理と、
    前記スキャンサーバプログラムによって、前記取得処理にて取得した前記スキャンジョブに基づいて、前記スキャナが対応可能な前記第1プロトコルのスキャンコマンドを、前記通信インタフェースを介して前記スキャナに送信する送信処理と、
    前記送信処理にて送信された前記スキャンコマンドに応じて前記スキャナが原稿を読み取った読取結果を、前記通信インタフェースを介して前記第1プロトコルによって受信する受信処理と、
    を実行する、
    ことを特徴とする情報処理装置。
JP2020041093A 2020-03-10 2020-03-10 プログラムセット、読取結果の取得方法および情報処理装置 Active JP7415682B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2020041093A JP7415682B2 (ja) 2020-03-10 2020-03-10 プログラムセット、読取結果の取得方法および情報処理装置
US17/194,496 US11283940B2 (en) 2020-03-10 2021-03-08 Non-transitory storage medium storing program set readable by computer of information processing apparatus, method for obtaining read result, and information processing apparatus
US17/654,832 US11637938B2 (en) 2020-03-10 2022-03-15 Non-transitory storage medium storing program set readable by computer of information processing apparatus, method for obtaining read result, and information processing apparatus
US18/302,924 US12126773B2 (en) 2020-03-10 2023-04-19 Non-transitory storage medium storing program set readable by computer of information processing apparatus, method for obtaining read result, and information processing apparatus
JP2023218992A JP2024026523A (ja) 2020-03-10 2023-12-26 プログラムセット、読取結果の取得方法および情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020041093A JP7415682B2 (ja) 2020-03-10 2020-03-10 プログラムセット、読取結果の取得方法および情報処理装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023218992A Division JP2024026523A (ja) 2020-03-10 2023-12-26 プログラムセット、読取結果の取得方法および情報処理装置

Publications (2)

Publication Number Publication Date
JP2021145184A JP2021145184A (ja) 2021-09-24
JP7415682B2 true JP7415682B2 (ja) 2024-01-17

Family

ID=77665160

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2020041093A Active JP7415682B2 (ja) 2020-03-10 2020-03-10 プログラムセット、読取結果の取得方法および情報処理装置
JP2023218992A Pending JP2024026523A (ja) 2020-03-10 2023-12-26 プログラムセット、読取結果の取得方法および情報処理装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023218992A Pending JP2024026523A (ja) 2020-03-10 2023-12-26 プログラムセット、読取結果の取得方法および情報処理装置

Country Status (2)

Country Link
US (2) US11283940B2 (ja)
JP (2) JP7415682B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006139376A (ja) 2004-11-10 2006-06-01 Canon Inc 画像読み取り装置
JP2011124652A (ja) 2009-12-08 2011-06-23 Sharp Corp 複合機、複合機制御システム、プログラムおよび記録媒体
JP2012044420A (ja) 2010-08-18 2012-03-01 Canon Inc 画像読取システム、画像読取装置、それらの制御方法、及びプログラム
JP2012253515A (ja) 2011-06-01 2012-12-20 Canon Inc 画像入力システム、情報処理装置、その制御方法及びプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4075885B2 (ja) * 2004-11-17 2008-04-16 ブラザー工業株式会社 通信装置及びプログラム並びに通信装置の設定方法
US8220005B2 (en) 2007-08-30 2012-07-10 Ricoh Company, Limited Apparatus, system, and computer program product for processing information
JP2014036314A (ja) * 2012-08-08 2014-02-24 Canon Inc スキャンサービスシステム、スキャンサービス方法及びスキャンサービスプログラム
JP6399915B2 (ja) * 2014-12-08 2018-10-03 キヤノン株式会社 画像読取装置、情報処理方法及びプログラム
JP6790601B2 (ja) * 2016-08-31 2020-11-25 ブラザー工業株式会社 画像解析装置
JP7059752B2 (ja) 2018-03-29 2022-04-26 ブラザー工業株式会社 アプリケーションプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006139376A (ja) 2004-11-10 2006-06-01 Canon Inc 画像読み取り装置
JP2011124652A (ja) 2009-12-08 2011-06-23 Sharp Corp 複合機、複合機制御システム、プログラムおよび記録媒体
JP2012044420A (ja) 2010-08-18 2012-03-01 Canon Inc 画像読取システム、画像読取装置、それらの制御方法、及びプログラム
JP2012253515A (ja) 2011-06-01 2012-12-20 Canon Inc 画像入力システム、情報処理装置、その制御方法及びプログラム

Also Published As

Publication number Publication date
JP2024026523A (ja) 2024-02-28
US20220201128A1 (en) 2022-06-23
US20230254419A1 (en) 2023-08-10
US20210289076A1 (en) 2021-09-16
US11283940B2 (en) 2022-03-22
US11637938B2 (en) 2023-04-25
JP2021145184A (ja) 2021-09-24

Similar Documents

Publication Publication Date Title
JP7501761B2 (ja) アプリケーションプログラム
US8508780B2 (en) Scanner apparatus capable of optimal transmission and saving of image data
JP5219777B2 (ja) 画像処理装置、画像処理装置の制御方法及びコンピュータプログラム
JP7099007B2 (ja) アプリケーションプログラム
JP6031275B2 (ja) 画像処理装置及びその制御方法とプログラム
US9667721B2 (en) Relaying device, image processing device, and system comprising image processing device and relaying device
JP7279603B2 (ja) 画像読取装置
JP7415682B2 (ja) プログラムセット、読取結果の取得方法および情報処理装置
US8094334B2 (en) Image forming apparatus for managing application and control method therefor
US12126773B2 (en) Non-transitory storage medium storing program set readable by computer of information processing apparatus, method for obtaining read result, and information processing apparatus
JP7322443B2 (ja) 通信デバイス
JP7404810B2 (ja) 画像読取装置
JP7439973B2 (ja) プログラムセット、プログラム、および情報処理装置
JP2013074366A (ja) 画像読取装置、及び、プログラム、並びに、当該画像読取装置及び当該プログラムがインストールされたコンピュータを用いる画像読取システム
JP2007328773A (ja) アプリケーション管理装置及びアプリケーション管理方法
JP2016186716A (ja) 印刷システム、印刷制御装置、印刷出力装置およびプログラム
JP6263996B2 (ja) データ転送システム,ファクシミリ装置,およびプログラム
JP2020166527A (ja) プリントサーバプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230131

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231124

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231218

R150 Certificate of patent or registration of utility model

Ref document number: 7415682

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150