JP4830537B2 - Information processing apparatus, control method, and control program - Google Patents
Information processing apparatus, control method, and control program Download PDFInfo
- Publication number
- JP4830537B2 JP4830537B2 JP2006049552A JP2006049552A JP4830537B2 JP 4830537 B2 JP4830537 B2 JP 4830537B2 JP 2006049552 A JP2006049552 A JP 2006049552A JP 2006049552 A JP2006049552 A JP 2006049552A JP 4830537 B2 JP4830537 B2 JP 4830537B2
- Authority
- JP
- Japan
- Prior art keywords
- communication
- target
- self
- unit
- embedded
- 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
Links
- 238000000034 method Methods 0.000 title claims description 47
- 230000010365 information processing Effects 0.000 title claims description 23
- 238000004891 communication Methods 0.000 claims description 174
- 230000008569 process Effects 0.000 claims description 38
- 238000012545 processing Methods 0.000 claims description 27
- 238000011161 development Methods 0.000 description 38
- 238000010586 diagram Methods 0.000 description 12
- 238000009434 installation Methods 0.000 description 9
- 230000007246 mechanism Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 230000001404 mediated effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
Description
本発明は、情報処理装置、制御方法および制御プログラムに係り、特にプリンタなどの機器に組み込まれて動作するアプリケーションの開発時および組込時の制御技術に関する。 The present invention relates to an information processing apparatus, a control method, and a control program, and more particularly, to a control technique at the time of development and installation of an application that is installed and operates in a device such as a printer.
従来より、プリンタなどの各種機器に組み込まれて動作するアプリケーションプログラム(以下、単にアプリケーションという。)が知られている。
このようなアプリケーションを開発する際には、ワークステーションやパーソナルコンピュータに組込対象の機器(以下、組込対象機器という。)を接続して、ワークステーションやパーソナルコンピュータ上で行うのが一般的である。
このような開発環境において、アプリケーションを組込対象機器に組み込んだ際に当該組込対象機器との通信処理を行う処理部分の試験については、ワークステーションやパーソナルコンピュータ上で行うことはできず、実際に組込対象機器にアプリケーションを組み込んだ状態で試験する必要があった。
しかしながら、上記従来の手法によれば、開発途中のアプリケーションを組込対象機器に実際に組み込む処理が発生するとともに、動作状態をモニタリングするのも簡単ではなく、開発効率が悪いという問題点があった。
これを解決すべく、特許文献1記載の技術は、ワークステーションやパーソナルコンピュータ上でエミュレータを実装し、擬似的に組込対象機器に組み込んだ状態を実現することにより開発効率の向上を図っている。
When developing such an application, it is common to connect a device to be embedded (hereinafter referred to as a device to be embedded) to a workstation or personal computer, and then perform the operation on the workstation or personal computer. is there.
In such a development environment, when the application is installed in the target device, testing of the processing part that performs communication processing with the target device cannot be performed on a workstation or personal computer. It was necessary to test with the application installed in the target device.
However, according to the conventional method described above, there is a problem that the process of actually incorporating the application under development into the target device is generated, and it is not easy to monitor the operation state, and the development efficiency is low. .
In order to solve this, the technique described in
ところで、エミュレータは、実際の組込機器の動作を再現することが望まれるが、現実的には、実際の組込対象機器と全く同一の動作を行わせるエミュレータを作成することは困難であり、特に組込対象機器の動作状態によって動的に変化するMIB(Management Information Base)の値などを再現することは困難であった。
特にエミュレータは、組込対象機器毎に作成する必要があり、アプリケーションが複数の組込対象機器に対応可能であるとしても、当該複数の組込対象機器毎に作成する必要があり、さらに組込対象機器のモデルチェンジ、ファームウェアのアップデートの度にデバイスエミュレータも更新しなければならず、メンテナンスやバージョンアップに多大なコストを要してしまうという問題点があった。
そこで、本発明の目的は、エミュレータを用いることなく、ワークステーションやパーソナルコンピュータ等の開発環境上で、組込対象機器に組み込んだ場合と同様の開発が行えるとともに、容易に組込対象機器に組み込むことが可能なアプリケーションの処理を行う情報処理装置、制御方法および制御プログラムを提供することにある。
By the way, it is desirable for the emulator to reproduce the operation of the actual embedded device, but in reality, it is difficult to create an emulator that performs exactly the same operation as the actual target device. In particular, it has been difficult to reproduce MIB (Management Information Base) values that dynamically change depending on the operating state of the target device.
In particular, an emulator must be created for each target device. Even if an application can handle multiple target devices, it must be created for each target device. The device emulator has to be updated every time the model of the target device is changed or the firmware is updated, and there is a problem that a great deal of cost is required for maintenance and version upgrade.
Accordingly, an object of the present invention is to enable development similar to that incorporated in an installation target device on a development environment such as a workstation or a personal computer without using an emulator, and to easily incorporate it in the installation target device. The present invention provides an information processing apparatus, a control method, and a control program that perform application processing.
上記課題を解決するため、組込対象機器に組み込まれて動作するアプリケーションプログラムの処理を行うための情報処理装置であって、前記アプリケーションプログラムにより通信がなされた場合に、通信対象が自己であるのか、通信ラインを介して接続される外部の機器であるのかを判別する通信対象判別部と、前記判別の結果に基づいて前記アプリケーションプログラムの通信対象が自己である場合には、対応する処理を自己内で実行する処理実行部と、前記判別の結果に基づいて前記アプリケーションプログラムの通信対象が通信ラインを介して接続される外部の機器である場合には、前記外部の機器に対する通信を仲介する通信仲介部と、を備えたことを特徴としている。
上記構成によれば、通信対象判別部は、アプリケーションプログラムにより通信がなされた場合に、通信対象が自己であるのか、通信ラインを介して接続される外部の機器であるのかを判別する。
処理実行部は、前記判別の結果に基づいて前記アプリケーションプログラムの通信対象が自己である場合には、対応する処理を自己内で実行する。
通信仲介部は、判別の結果に基づいてアプリケーションプログラムの通信対象が通信ラインを介して接続される外部の機器である場合には、外部の機器に対する通信を仲介する。
これにより、コストのかかるエミュレータを用意することなく、開発環境上で対象機器に組み込んだ場合と同様の開発を行うことができる。
In order to solve the above-described problem, an information processing apparatus for processing an application program that is installed and operated in an installation target device, and when communication is performed by the application program, is the communication target self? A communication target determining unit that determines whether the device is an external device connected via a communication line; and if the communication target of the application program is self based on the determination result, A communication unit that performs communication with the external device when the communication target of the application program is an external device connected via a communication line based on the determination result And an intermediary department.
According to the above configuration, the communication target determining unit determines whether the communication target is itself or an external device connected via the communication line when communication is performed by the application program.
When the communication target of the application program is self based on the determination result, the process execution unit executes the corresponding process within itself.
If the communication target of the application program is an external device connected via a communication line based on the determination result, the communication mediation unit mediates communication with the external device.
Thereby, it is possible to perform the same development as that incorporated in the target device in the development environment without preparing an expensive emulator.
また、組込対象機器に組み込まれて動作するアプリケーションプログラムの処理を行うための情報処理装置であって、前記アプリケーションプログラムの通信を受けて、対応する処理を自己内で実行する処理実行部、あるいは、通信ラインを介して接続される外部の機器に対する通信を仲介する通信仲介部のうち、いずれか一方が排他的に接続可能に構成された通信処理部を備えたことを特徴としている。
これによれば、リソースの少ない環境においても、最低限必要な手段のみで自己内における実行あるいは仲介を実行することができ、組込対象機器に組み込んだ場合と同様の開発を行うことができる。
Also, an information processing apparatus for performing processing of an application program installed and operating in a device to be embedded, a processing execution unit that receives communication of the application program and executes corresponding processing within itself, or One of the communication mediation units that mediate communication with an external device connected via a communication line includes a communication processing unit configured to be exclusively connectable.
According to this, even in an environment where there are few resources, execution or mediation can be executed within itself with only the minimum necessary means, and development similar to the case where it is incorporated in an installation target device can be performed.
これらの場合において、通信先としての前記外部の機器の通信アドレスを更新可能に記憶する通信アドレス記憶部を備え、前記通信仲介部は、前記通信アドレス記憶部の記憶内容を参照して前記仲介を行うようにしてもよい。
また、通信先としての前記外部の機器の通信アドレスを前記通信ラインを介して収集する通信アドレス収集部と、収集された前記外部の機器の通信アドレスのうちから、外部からの指示に対応する通信アドレスを選択する通信アドレス選択部と、を備え、前記通信仲介部は、前記選択された通信アドレスを用いて前記仲介を行うようにしてもよい。
さらに、前記収集した通信アドレスに対応する外部の機器を視覚的にユーザに提示する通信先提示部と、前記ユーザが前記指示を入力するための指示入力部と、を備えるようにしてもよい。
これらによれば、外部の機器に対する仲介先を容易に変更でき、より効率よく対象機器に組み込んだ場合と同様の開発を行うことができる。
In these cases, a communication address storage unit that stores the communication address of the external device as a communication destination in an updatable manner is provided, and the communication mediation unit refers to the storage content of the communication address storage unit and performs the mediation. You may make it perform.
In addition, a communication address collecting unit that collects communication addresses of the external device as a communication destination via the communication line, and communication corresponding to an instruction from the outside among the collected communication addresses of the external device A communication address selection unit that selects an address, and the communication mediation unit may perform the mediation using the selected communication address.
Furthermore, a communication destination presenting unit that visually presents an external device corresponding to the collected communication address to the user, and an instruction input unit for the user to input the instruction may be provided.
According to these, the mediation destination for an external device can be easily changed, and development similar to the case where it is incorporated into the target device more efficiently can be performed.
また、組込対象機器に組み込まれて動作するアプリケーションプログラムの処理を行うための情報処理装置の制御方法であって、前記アプリケーションプログラムにより通信がなされた場合に、通信対象が自己であるのか、通信ラインを介して接続される外部の機器であるのかを判別する通信対象判別過程と、前記判別の結果に基づいて前記アプリケーションプログラムの通信対象が自己である場合には、対応する処理を自己内で実行する処理実行過程と、前記判別の結果に基づいて前記アプリケーションプログラムの通信対象が通信ラインを介して接続される外部の機器である場合には、前記外部の機器に対する通信を仲介する通信仲介過程と、を備えたことを特徴としている。
これにより、コストのかかるエミュレータを用意することなく、開発環境上で対象機器に組み込んだ場合と同様の開発を行うことができる。
Also, there is provided a method of controlling an information processing apparatus for processing an application program that is installed and operated in an installation target device. When communication is performed by the application program, whether the communication target is self or communication A communication target determination process for determining whether the device is an external device connected via a line, and if the communication target of the application program is self based on the result of the determination, the corresponding processing is performed within the self. A process execution process to be executed and a communication mediation process to mediate communication with the external device when the communication target of the application program is an external device connected via a communication line based on the determination result It is characterized by having.
Thereby, it is possible to perform the same development as that incorporated in the target device in the development environment without preparing an expensive emulator.
また、組込対象機器に組み込まれて動作するアプリケーションプログラムの処理を行うための情報処理装置の制御方法であって、前記アプリケーションプログラムの通信を受けて、対応する処理を自己内で実行する処理実行過程、あるいは、通信ラインを介して接続される外部の機器に対する通信を仲介する通信仲介過程のうち、いずれか一方を排他的に行うことを特徴としている。
これによれば、リソースの少ない環境においても、最低限必要な手段のみで自己内における実行あるいは仲介を実行することができ、組込対象機器に組み込んだ場合と同様の開発を行うことができる。
Also, a method for controlling an information processing apparatus for processing an application program that is installed in and operates on a target device to be embedded, wherein the processing is executed by receiving the communication of the application program and executing the corresponding processing within itself. One of the process and the communication mediation process that mediates communication with an external device connected via a communication line is exclusively performed.
According to this, even in an environment where there are few resources, execution or mediation can be executed within itself with only the minimum necessary means, and development similar to the case where it is incorporated in an installation target device can be performed.
また、通信ラインに接続可能な情報処理装置をコンピュータにより制御するための制御プログラムであって、通信対象が当該情報処理装置であるのか、通信ラインを介して接続される外部の機器であるのかを判別させ、前記判別の結果に基づいて前記通信対象が自己である場合には、対応する処理を自己内で実行させ、前記判別の結果に基づいて前記通信対象が前記通信ラインを介して接続される外部の機器である場合には、前記外部の機器に対する通信を仲介させる、ことを特徴としている。
これにより、コストのかかるエミュレータを用意することなく、開発環境上で対象機器に組み込んだ場合と同様の開発を行うことができる。
Also, a control program for controlling an information processing device connectable to a communication line by a computer, whether the communication target is the information processing device or an external device connected via the communication line If the communication target is self based on the result of the determination, the corresponding process is executed within the self, and the communication target is connected via the communication line based on the determination result. In the case of an external device, communication with the external device is mediated.
Thereby, it is possible to perform the same development as that incorporated in the target device in the development environment without preparing an expensive emulator.
また、対応する処理を自己内で実行する処理実行部、あるいは、通信ラインを介して接続される外部の機器に対する通信を仲介する通信仲介部のいずれか一方を備えるとともに、通信ラインに接続可能な情報処理装置をコンピュータにより制御するための制御プログラムであって、アプリケーションプログラムの通信を受けて、前記処理実行部に対応する処理を実行させ、あるいは、前記通信仲介部に前記通信の仲介を行わせることを特徴としている。
これによれば、リソースの少ない環境においても、最低限必要な手段のみで自己内における実行あるいは仲介を実行することができ、組込対象機器に組み込んだ場合と同様の開発を行うことができる。
In addition, it has either a process execution unit that executes the corresponding process within itself or a communication mediation unit that mediates communication with an external device connected through the communication line, and can be connected to the communication line. A control program for controlling an information processing apparatus by a computer, receiving communication of an application program, causing a process corresponding to the process execution unit to be executed, or causing the communication mediation unit to mediate the communication It is characterized by that.
According to this, even in an environment where there are few resources, execution or mediation can be executed within itself with only the minimum necessary means, and development similar to the case where it is incorporated in an installation target device can be performed.
次に本発明の好適な実施の形態について図面を参照して説明する。
図1は実施形態のアプリケーション開発システムの概要構成ブロック図である。
以下の説明においては、組込対象機器としてプリンタを用いる場合について説明する。
アプリケーション開発システム10は、ハードウェア的には、アプリケーション開発用パーソナルコンピュータ11と、アプリケーションを実際に動作させようとするデバイスであるプリンタ12と、パーソナルコンピュータ11とプリンタ12とを結ぶ通信ケーブル(あるいはLAN)13と、を備えている。
Next, preferred embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a schematic configuration block diagram of an application development system according to an embodiment.
In the following description, a case where a printer is used as an installation target device will be described.
In terms of hardware, the
この場合において、開発対象のアプリケーションとしては、正規のユーザによる印字出力であるか否かを判別するための認証アプリケーション、複数のプリンタで処理を分散(例えば、100部の印刷を5台のプリンタで20部ずつ印刷させる等)して行わせるクラスタプリント(分散印刷)アプリケーション、印刷対象の画像に対して処理を行う画像処理アプリケーション、プリンタ11のステータスを管理サーバ、あるいは課金サーバなどに通知したり、メンテナンスや消耗品補充のためにサービス会社に通知するなどの状態管理アプリケーションなどがあげられる。
パーソナルコンピュータ11は、各種情報を表示するためのディスプレイ14と、開発者であるユーザが各種情報を入力するためのキーボードなどの入力装置15と、開発対象のアプリケーション16が動作するパーソナルコンピュータ本体18と、を備えている。
In this case, as an application to be developed, an authentication application for determining whether or not the output is a print output by a legitimate user, processing is distributed by a plurality of printers (for example, 100 copies are printed by five printers). A cluster print (distributed printing) application to be performed by printing 20 copies, an image processing application for processing an image to be printed, the status of the
The
図2は、パーソナルコンピュータ本体の概要構成ブロック図である。
パーソナルコンピュータ本体18は、パーソナルコンピュータ本体18全体を制御するためのCPU21と、各種制御プログラムを予め記憶したROM22と、アプリケーションを含む各種データを一時的に記憶するRAM23と、入力装置15との間のインタフェース動作を行う入力インタフェース(I/F)24と、ディスプレイ14において各種表示を行うべくインタフェース動作を行う表示インタフェース(I/F)25と、大容量データを記憶するためのハードディスクなどに代表される(外部)記憶装置26と、通信ケーブル(あるいはLAN)13を介した外部との通信におけるインタフェース動作を行う通信インタフェース(I/F)27と、上述したパーソナルコンピュータ本体18の各構成要素21〜27間を通信可能に接続するバス28と、を備えている。
FIG. 2 is a schematic configuration block diagram of the personal computer main body.
The personal computer
図3は、プリンタの概要構成ブロック図である。
プリンタ12は、プリンタ12全体を制御するためのCPU31と、各種制御プログラムを予め記憶したROM32と、アプリケーションを含む各種データを一時的に記憶するRAM33と、通信ケーブル(あるいはLAN)13を介した外部との通信におけるインタフェース動作あるいは実際の印刷を行う印刷機構35との通信におけるインタフェース動作を行う通信インタフェース(I/F)34と、上述したCPU31、ROM32、RAM33あるいは通信インタフェース34間を通信可能に接続するバス36と、を備えている。
FIG. 3 is a schematic configuration block diagram of the printer.
The
図4は、アプリケーション開発中のアプリケーション開発システムの機能構成ブロック図である。
パーソナルコンピュータ本体18は、開発対象のアプリケーション16を実行するためのプログラム実行部18Aを備えている。
開発対象のアプリケーション16は、アプリケーションの本来の機能(印刷制御など)を実現するアプリケーション本体41と、アプリケーション16と機器(本実施形態ではパーソナルコンピュータ本体18およびプリンタ12)との間の通信処理を行う自己通信部42と、を備えている。
FIG. 4 is a functional configuration block diagram of the application development system during application development.
The personal computer
The
自己通信部42は、通信ケーブル13を介して接続されているプリンタを探索し、探索されたプリンタの通信アドレス(IPアドレスなど)を取得するプリンタ探索部43と、プリンタ探索部43により探索されたプリンタをユーザが選択可能にディスプレイ14に表示する探索結果表示部44と、入力装置15からの入力に基づいて実際に通信を行うプリンタを選択するプリンタ選択部45と、プリンタ選択部45により選択されたプリンタの通信アドレスを通信のアクセス先として設定するアクセス先設定部46と、を備えている。
一方、プリンタ12は、パーソナルコンピュータ本体18の自己通信部42との間で通信ケーブル13を介して通信を行う通信部51と、動作状態に応じてMIBの値を更新しつつ格納するMIB記憶部52と、上述したプリンタ機構35を備えている。
The self-
On the other hand, the
次に実施形態の動作を説明する。
以下の説明においては、アプリケーションは、Java(登録商標)で作成されているものとする。
この場合において、自己通信部42は、Java(登録商標)におけるクラスとして実現されており、例えば、「printerClass」という名前でプリンタ12へのアクセスを司るクラスを用意し、インタフェースとして、「印刷実行」、「指定したオブジェクトIDのMIB値の取得」および「指定したオブジェクトIDのMIB値への指定値の書き込み」を行うようにし、アプリケーション本体41から利用する場合には、「printerClass」という名前のクラスを呼び出して、所望のデータを印刷する「印刷実行」をさせ、「指定したオブジェクトIDのMIB値の取得」を行わせて、所定の変数に代入させ、「指定したオブジェクトIDのMIB値への指定値の書き込み」を行わせて、所定の文字列を書き込ませるようにする。
Next, the operation of the embodiment will be described.
In the following description, it is assumed that the application is created with Java (registered trademark).
In this case, the self-
図5は、アプリケーションの処理フローチャートである。
アプリケーション16は、実行されると、自己通信部42が自己の動作環境をチェックする(ステップS11)。
続いて自己通信部42は、ステップS11のチェック結果に基づいて、自己がプリンタ12上で動作しているか否かを判別する(ステップS12)。
この場合においては、図1に示すように、パーソナルコンピュータ本体18上で動作しているので(ステップS12;No)、プリンタ探索部43が通信ケーブル13を介して接続されているプリンタを探索し、探索されたプリンタの通信アドレス(IPアドレスなど)を取得する(ステップS13)。
FIG. 5 is a process flowchart of the application.
When the
Subsequently, the self-
In this case, as shown in FIG. 1, since it operates on the personal computer main body 18 (step S12; No), the
図6は、プリンタ探索時の処理フローチャートである。
まず、プリンタ探索部43は、ブロードキャストにより、pingコマンドを送信する(ステップS21)。
続いてプリンタ探索部43は、pingコマンドに応答した機器(の通信アドレス)に対してSNMP(Simple Network Management Protocol)により機器名の取得コマンドを送信する(ステップS22)。
そしてプリンタ探索部43は、機器名の取得コマンドに対応する応答の内容を判別し、機器名がプリンタのものである場合には、機器名および通信アドレスをリストに記録する(ステップS23)。
続いて探索結果表示部44は、プリンタ探索部43により探索されたプリンタをユーザが選択可能にディスプレイ14の表示画面14Aに表示する。
FIG. 6 is a processing flowchart when searching for a printer.
First, the
Subsequently, the
Then, the
Subsequently, the search
図7は、探索されたプリンタの選択画面の一例の説明図である。
図7に示すように、ディスプレイ14の表示画面14Aには、プリンタのアイコンI1〜I5とともに、通信アドレスが表示される。これにより、ユーザである開発者はいずれかのアイコン、ひいては、アイコンに対応するプリンタを選択した上で、決定ボタンB1をクリックすることにより、選択指示の入力を行うこととなる。なお、キャンセルボタンB2をクリックすることにより、プリンタの選択が解除される。
この状態で、ユーザである開発者が入力装置15から選択指示の入力を行うと、プリンタ選択部が実際に通信を行うプリンタを選択し、アクセス先設定部46は、プリンタ選択部45により選択されたプリンタの通信アドレスを通信のアクセス先として設定する(ステップS15)。
FIG. 7 is an explanatory diagram of an example of a screen for selecting a searched printer.
As shown in FIG. 7, a communication address is displayed on the
In this state, when a developer, who is a user, inputs a selection instruction from the
続いて、自己通信部42は、アプリケーション本体41からプリンタ12へのアクセスが呼び出されたか否かを判別する(ステップS17)。
ステップS17の判別において、未だアプリケーション本体41からプリンタ12へのアクセスが呼び出されていない場合には(ステップS17;No)、待機状態となる。
ステップS17の判別において、アプリケーション本体41からプリンタ12へのアクセスが呼び出された場合には(ステップS17;Yes)、設定された通信アドレスのプリンタ12に対して通信ケーブル13を介してプリンタアクセスを実施し、処理を終了する(ステップS18)。
Subsequently, the self-
If it is determined in step S17 that access to the
If the access to the
図8は、プリンタアクセス時のプリンタの処理フローチャートである。
プリンタ12のCPU31は、通信部51を構成する通信インタフェース34を介して印刷データを受信したか否かを判別する(ステップS31)。
ステップS31の判別において、印刷データを受信していない場合には(ステップS31;No)、処理をステップS33に移行する。
ステップS31の判別において、印刷データを受信した場合には(ステップS31;Yes)、印刷機構35を制御して印刷を実行する(ステップS32)。
続いてプリンタ12のCPU31は、通信部51を構成する通信インタフェース34を介してMIB情報へのアクセスコマンドを受信したか否かを判別する(ステップS33)。
ステップS33の判別において、MIB情報へのアクセスコマンドを受信していない場合には(ステップS33;No)、処理を終了する。
ステップS33の判別において、MIB情報へのアクセスコマンドを受信した場合には(ステップS33;Yes)、MIB記憶部52を制御してMIB情報(値)の提供またはMIB情報(値)の変更を実施し(ステップS34)、処理を終了する。
FIG. 8 is a process flowchart of the printer when accessing the printer.
The
If it is determined in step S31 that print data has not been received (step S31; No), the process proceeds to step S33.
If it is determined in step S31 that print data has been received (step S31; Yes), the
Subsequently, the
If it is determined in step S33 that an access command to MIB information has not been received (step S33; No), the process ends.
If it is determined in step S33 that an access command to MIB information has been received (step S33; Yes), the
図9は、開発中のアプリケーションをプリンタ12に組み込んで動作させる場合の説明図である。また、図10は、開発中のアプリケーションをプリンタに組み込んだ場合の機能ブロック図である。
以上の説明は、開発中のアプリケーションがパーソナルコンピュータ本体18上で動作している場合であったが、図9に示すように開発中のアプリケーションをプリンタ12に組み込んで動作させる場合について説明する。
この場合においても、図10に示すように、アプリケーション16およびプリンタ12の基本構成は、図4で示した場合と同様になっている。
FIG. 9 is an explanatory diagram when an application under development is incorporated in the
The above description is for the case where the application under development is operating on the personal computer
Also in this case, as shown in FIG. 10, the basic configurations of the
次に動作を図5を参照して説明する。
アプリケーション16は、実行されると、自己通信部42が自己の動作環境をチェックする(ステップS11)。
続いて自己通信部42は、ステップS11のチェック結果に基づいて、自己がプリンタ12上で動作しているか否かを判別する(ステップS12)。
この場合においては、図9に示すように、プリンタ12上で動作しているので(ステップS12;Yes)、localhost、すなわち、プリンタ12自身を通信のアクセス先として設定する(ステップS16)。
続いて、自己通信部42は、アプリケーション本体41からプリンタ12へのアクセスが呼び出されたか否かを判別する(ステップS17)。
ステップS17の判別において、未だアプリケーション本体41からプリンタ12へのアクセスが呼び出されていない場合には(ステップS17;No)、待機状態となる。
ステップS17の判別において、アプリケーション本体41からプリンタ12へのアクセスが呼び出された場合には(ステップS17;Yes)、設定されたlocalhost、すなわち、プリンタ12自身に対してプリンタアクセスを実施し、処理を終了する(ステップS18)。
Next, the operation will be described with reference to FIG.
When the
Subsequently, the self-
In this case, as shown in FIG. 9, since it is operating on the printer 12 (step S12; Yes), localhost, that is, the
Subsequently, the self-
If it is determined in step S17 that access to the
If it is determined in step S17 that access to the
以上の説明のように、本実施形態によれば、アプリケーション16は、自己が開発環境であるパーソナルコンピュータ本体18上で動作しているのか、プリンタ12に組み込まれて動作しているのかを自動的に判断して、アクセス先アドレスを自動的に設定してプリンタアクセスを実施することとなるので、開発者であるユーザは、動作環境を意識することなく開発が行え、開発効率の向上を図ることができる。
As described above, according to the present embodiment, the
以上の説明は、アプリケーション16が動作環境を自動的に判別するものであったが、上述した自己通信部42のみをパーソナルコンピュータ本体18用のものと、プリンタ12組込用のものとをモジュールとして用意しておき、当該モジュールのみを変更することによりアプリケーション本体41を共通化した状態で開発を行え、開発効率を向上させることができる。
この場合においては、上述した実施形態と異なり、プリンタ12に組み込む場合は、自己通信部42に、図4に示したプリンタ探索部43、探索結果表示部44、プリンタ選択部45およびアクセス先設定部46を組み込む必要はない。すなわち、通信先として常にlocalhost(プリンタ12自身)を設定しておけばよい。
In the above description, the
In this case, unlike the above-described embodiment, when incorporated in the
図11は、パーソナルコンピュータ本体用のアプリケーションの処理フローチャートである。
この場合においては、予め自己通信部42として、パーソナルコンピュータ本体18用のもの(図4参照)を登録しておく(ステップS41)。
これにより、自己通信部は、図5のステップS13〜S15と同様の処理を行って、アクセス先設定部46は、プリンタ選択部45により選択されたプリンタの通信アドレスを通信のアクセス先として設定する(ステップS42)。
続いて、自己通信部42は、アプリケーション本体41からプリンタ12へのアクセスが呼び出されたか否かを判別する(ステップS43)。
ステップS43の判別において、未だアプリケーション本体41からプリンタ12へのアクセスが呼び出されていない場合には(ステップS43;No)、待機状態となる。
ステップS437の判別において、アプリケーション本体41からプリンタ12へのアクセスが呼び出された場合には(ステップS437;Yes)、設定された通信アドレスのプリンタ12に対して通信ケーブル13を介してプリンタアクセスを実施し、処理を終了する(ステップS44)。
FIG. 11 is a process flowchart of an application for the personal computer main body.
In this case, the self-
As a result, the self-communication unit performs the same processing as steps S13 to S15 in FIG. 5, and the access
Subsequently, the self-
If it is determined in step S43 that access to the
If access to the
図12は、プリンタ組込用のアプリケーションの処理フローチャートである。
この場合においては、予め自己通信部42として、上述したプリンタ探索部43、探索結果表示部44、プリンタ選択部45およびアクセス先設定部46を組み込んでいないプリンタ組込用のものを登録しておく(ステップS51)。
これにより、自己通信部42は、通信のアクセス先として、localhost、すなわち、プリンタ12自身が設定されているので、アプリケーション本体41からプリンタ12へのアクセスが呼び出されたか否かを判別する(ステップS52)。
ステップS52の判別において、未だアプリケーション本体41からプリンタ12へのアクセスが呼び出されていない場合には(ステップS52;No)、待機状態となる。
ステップS52の判別において、アプリケーション本体41からプリンタ12へのアクセスが呼び出された場合には(ステップS52;Yes)、設定されたlocalhost、すなわち、プリンタ12自身に対してプリンタアクセスを実施し、処理を終了する(ステップS53)。
以上の説明のように、本変形例によれば、クラスとして構成されている自己通信部自体の構成は異なるが、クラス名、インタフェース名は共通化可能であるため、開発時、プリンタ組込時でアプリケーション本体41の変更は必要ないため、開発効率の向上が見込めることとなる。
FIG. 12 is a process flowchart of an application for incorporating a printer.
In this case, the self-
As a result, the self-
If it is determined in step S52 that access to the
In step S52, when access to the
As described above, according to this modification, the configuration of the self-communication unit itself configured as a class is different, but the class name and interface name can be shared. Therefore, since it is not necessary to change the application
以上の説明では、自己通信部42がプリンタ上で動作しているかを判断する基準については説明しなかったが、自己のMIB情報を参照して自己がプリンタであるか否かを判別するように構成すればよい。
In the above description, the criterion for determining whether the self-
以上の説明においては、エミュレーション対象のデバイスとしてプリンタ(印刷装置)の場合について説明したが、これに限られるものではなく、PDAや携帯電話などの携帯情報機器、パーソナルコンピュータなどの各種情報処理機能を有する情報処理装置であっても、アプリケーションを組み込むことが可能なデバイス(装置)であれば、適用が可能である。 In the above description, a printer (printing apparatus) has been described as a device to be emulated. However, the present invention is not limited to this, and various information processing functions such as a portable information device such as a PDA or a mobile phone, and a personal computer are provided. Even an information processing apparatus that has an application can be applied to any device (apparatus) that can incorporate an application.
10…アプリケーション開発システム、11…アプリケーション開発用パーソナルコンピュータ、12…プリンタ、13…通信ケーブル、14…ディスプレイ(通信先提示部)、14A…表示画面、15…入力装置(指示入力部)、16…アプリケーション、18…パーソナルコンピュータ本体(エミュレータ装置)18、35…印刷機構、41…アプリケーション本体、42…自己通信部(通信対象判別部、処理実行部、通信仲介部、通信処理部)、43…プリンタ探索部、44…探索結果表示部、45…プリンタ選択部、46…アクセス先設定部、51…通信部、52…MIB記録部。
DESCRIPTION OF
Claims (6)
自己が前記組込対象機器上で動作しているか否かを判別し、前記組込対象機器上で動作していない場合は、通信ラインを介して接続される外部の組込対象機器を検索し、前記アプリケーションプログラムにより通信がなされる場合に、自己が前記組込対象機器上で動作していれば自己を通信対象とし、自己が前記組込対象機器上で動作していない場合は、前記検索した外部の組込対象機器を通信対象とする判別を行う通信対象判別部と、
前記判別の結果に基づいて前記通信対象が自己である場合には、対応する処理を自己内で実行する処理実行部と、
前記判別の結果に基づいて前記通信対象が通信ラインを介して接続される外部の組込対象機器である場合には、前記外部の組込対象機器に対する通信を仲介する通信仲介部と、
を備えたことを特徴とする情報処理装置 An information processing apparatus for processing an application program that is installed and operates in a target device,
It is determined whether or not it is operating on the device to be embedded, and if it is not operating on the device to be embedded, it searches for an external device to be connected connected via a communication line. , when the communication is Ru made by the application program, if the self is operating on the set write target device is the self communication target, if the self is not running on the set write object apparatus, the search A communication target determining unit for determining that the external embedded target device is a communication target ;
Wherein, when the communication target based on the result of the determination is self, a process executing unit for executing the corresponding processing in the self,
Wherein, when the communication target based on the result of the determination is outside the embedded target device connected via a communication line, a communication mediating unit for mediating the communication with the external embedded target device,
Information processing apparatus characterized by comprising
通信先としての前記外部の機器の通信アドレスを更新可能に記憶する通信アドレス記憶部を備え、A communication address storage unit that stores the communication address of the external device as a communication destination in an updatable manner,
前記通信仲介部は、前記通信アドレス記憶部の記憶内容を参照して前記仲介を行うことを特徴とする情報処理装置。The information processing apparatus, wherein the communication mediation unit performs the mediation with reference to storage contents of the communication address storage unit.
通信先としての前記外部の機器の通信アドレスを前記通信ラインを介して収集する通信アドレス収集部と、A communication address collection unit that collects a communication address of the external device as a communication destination via the communication line;
収集された前記外部の機器の通信アドレスのうちから、外部からの指示に対応する通信アドレスを選択する通信アドレス選択部と、を備え、A communication address selection unit that selects a communication address corresponding to an instruction from the outside from the collected communication addresses of the external device; and
前記通信仲介部は、前記選択された通信アドレスを用いて前記仲介を行うことを特徴とする情報処理装置。The information processing apparatus, wherein the communication mediation unit performs the mediation using the selected communication address.
前記収集した通信アドレスに対応する外部の機器を視覚的にユーザに提示する通信先提示部と、A communication destination presenting unit that visually presents an external device corresponding to the collected communication address to the user;
前記ユーザが前記指示を入力するための指示入力部と、An instruction input unit for the user to input the instruction;
を備えたことを特徴とする情報処理装置。An information processing apparatus comprising:
自己が前記組込対象機器上で動作しているか否かを判別し、前記組込対象機器上で動作していない場合は、通信ラインを介して接続される外部の組込対象機器を検索し、前記アプリケーションプログラムにより通信がなされる場合に、自己が前記組込対象機器上で動作していれば自己を通信対象とし、自己が前記組込対象機器上で動作していない場合は、前記検索した外部の組込対象機器を通信対象とする判別を行う通信対象判別過程と、It is determined whether or not it is operating on the device to be embedded, and if it is not operating on the device to be embedded, it searches for an external device to be connected connected via a communication line. When communication is performed by the application program, if the self is operating on the target device, the self is a target of communication, and if the self is not operating on the target device, the search is performed. Communication target determination process for determining the target external embedded device as a communication target;
前記判別の結果に基づいて前記通信対象が自己である場合には、対応する処理を自己内で実行する処理実行過程と、If the communication target is self based on the result of the determination, a process execution process for executing the corresponding process within itself,
前記判別の結果に基づいて前記通信対象が通信ラインを介して接続される外部の組込対象機器である場合には、前記外部の組込対象機器に対する通信を仲介する通信仲介過程と、If the communication target is an external target device connected via a communication line based on the determination result, a communication mediation process that mediates communication with the external target device;
を備えたことを特徴とする情報処理装置の制御方法。An information processing apparatus control method comprising:
自己が前記組込対象機器上で動作しているか否かを判別し、前記組込対象機器上で動作していない場合は、通信ラインを介して接続される外部の組込対象機器を検索し、前記アプリケーションプログラムにより通信がなされる場合に、自己が前記組込対象機器上で動作していれば自己を通信対象とし、自己が前記組込対象機器上で動作していない場合は、前記検索した外部の組込対象機器を通信対象とする判別の処理を実行させ、It is determined whether or not it is operating on the device to be embedded, and if it is not operating on the device to be embedded, it searches for an external device to be connected connected via a communication line. When communication is performed by the application program, if the self is operating on the target device, the self is a target of communication, and if the self is not operating on the target device, the search is performed. To execute the process of determining the target external embedded device as the communication target,
前記判別の結果に基づいて前記通信対象が自己である場合には、対応する処理を自己内で実行させ、If the communication target is self based on the result of the determination, the corresponding processing is executed within the self,
前記判別の結果に基づいて前記通信対象が前記通信ラインを介して接続される外部の組込対象機器である場合には、前記外部の組込対象機器に対する通信を仲介させる、If the communication target is an external target device to be connected via the communication line based on the determination result, mediating communication with the external target device,
ことを特徴とする制御プログラム。A control program characterized by that.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006049552A JP4830537B2 (en) | 2006-02-27 | 2006-02-27 | Information processing apparatus, control method, and control program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006049552A JP4830537B2 (en) | 2006-02-27 | 2006-02-27 | Information processing apparatus, control method, and control program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007226695A JP2007226695A (en) | 2007-09-06 |
JP4830537B2 true JP4830537B2 (en) | 2011-12-07 |
Family
ID=38548432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006049552A Expired - Fee Related JP4830537B2 (en) | 2006-02-27 | 2006-02-27 | Information processing apparatus, control method, and control program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4830537B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5325601B2 (en) * | 2009-02-17 | 2013-10-23 | 京セラドキュメントソリューションズ株式会社 | Software development system and software development method |
JP5543645B2 (en) * | 2013-07-10 | 2014-07-09 | 京セラドキュメントソリューションズ株式会社 | Software development system and software development method |
JP6379699B2 (en) | 2014-06-05 | 2018-08-29 | 株式会社リコー | Information processing apparatus, information processing system, information processing program, and information processing method |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0371239A (en) * | 1989-08-11 | 1991-03-27 | Hitachi Ltd | Testing system for application program |
JPH0784824A (en) * | 1993-09-14 | 1995-03-31 | Toshiba Corp | Program debugging device |
JPH07225707A (en) * | 1994-02-10 | 1995-08-22 | Fujitsu Ltd | Application test method and its test support device |
JPH10133914A (en) * | 1996-11-01 | 1998-05-22 | Nippon Steel Corp | Computer system and device input / output simulator |
JPH11224212A (en) * | 1998-02-06 | 1999-08-17 | Mitsubishi Electric Corp | Remote maintenance system |
JP2002312171A (en) * | 2001-04-09 | 2002-10-25 | Matsushita Electric Ind Co Ltd | Hardware-control software and development support system thereof |
-
2006
- 2006-02-27 JP JP2006049552A patent/JP4830537B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2007226695A (en) | 2007-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7552432B2 (en) | Information processing apparatus, information processing method, and control program | |
JP3834452B2 (en) | Device management system, management server, and computer-readable recording medium | |
US9075627B2 (en) | Server connected to image forming apparatus and client, client, and method of remotely installing driver of image forming apparatus | |
US9009585B1 (en) | Software wizard interface | |
KR20030034037A (en) | Control Apparatus And Contol Method For Starting Application Software On A Computer, And Multi-Moniter Computer, Client-Server System, And Storage Medium Using The Same | |
JP2007286824A (en) | System of unifying starting language of software, method of unifying starting language of software, and program | |
JP5648282B2 (en) | Screen management apparatus and program | |
JP4485997B2 (en) | Print control apparatus, print control system, print control method, print control program, and recording medium | |
JP2009217321A (en) | Information processor and information processing program | |
JP6300538B2 (en) | Management device, control method thereof, and program | |
EP3382995A1 (en) | Web server | |
JP4830537B2 (en) | Information processing apparatus, control method, and control program | |
US20060036569A1 (en) | Method and apparatus for changing background screen in gui operating system | |
JP2008102636A (en) | Information processing apparatus, control method therefor, and program | |
JP5140553B2 (en) | Information processing apparatus and image forming system including the same | |
US8422040B2 (en) | Image forming system and method, management apparatus, and recording medium | |
JP4546356B2 (en) | Image forming apparatus, control method therefor, program, and image forming system | |
JP2008294820A (en) | Network communication apparatus | |
US7202961B2 (en) | Method for dynamically creating a printer driver | |
US20180143794A1 (en) | Information processing apparatus, information processing system, and information processing method | |
JP5084699B2 (en) | Information processing apparatus and image forming system including the same | |
JP5140552B2 (en) | Information processing apparatus and image forming system including the same | |
JP2006331160A (en) | Software introduction environment configuration apparatus, software introduction environment configuration method, software introduction environment configuration program and recording medium | |
JP4802613B2 (en) | Installation system and installation program | |
JP6613940B2 (en) | Information processing system, setting method, information device, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081218 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100921 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110719 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110804 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20110804 |
|
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: 20110823 |
|
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: 20110905 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4830537 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: 20140930 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |