JP2021165939A - program - Google Patents
program Download PDFInfo
- Publication number
- JP2021165939A JP2021165939A JP2020069066A JP2020069066A JP2021165939A JP 2021165939 A JP2021165939 A JP 2021165939A JP 2020069066 A JP2020069066 A JP 2020069066A JP 2020069066 A JP2020069066 A JP 2020069066A JP 2021165939 A JP2021165939 A JP 2021165939A
- Authority
- JP
- Japan
- Prior art keywords
- program
- installation
- target
- version
- target program
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 168
- 238000009434 installation Methods 0.000 claims description 90
- 238000004891 communication Methods 0.000 claims description 28
- 230000006870 function Effects 0.000 claims description 27
- 230000010365 information processing Effects 0.000 claims description 23
- 238000012545 processing Methods 0.000 claims description 17
- 238000011900 installation process Methods 0.000 claims description 9
- 238000012217 deletion Methods 0.000 claims description 2
- 230000037430 deletion Effects 0.000 claims description 2
- 238000007639 printing Methods 0.000 description 3
- 238000009958 sewing Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は、プログラムのインストールに用いるプログラムに関する。 The present invention relates to a program used to install a program.
プログラムのインストールに用いるプログラムに関する技術が知られている。例えば、特許文献1には、FAX装置を制御するFAXドライバをインストールするためのインストーラが開示されている。 The technology related to the program used to install the program is known. For example, Patent Document 1 discloses an installer for installing a FAX driver that controls a FAX device.
インストール済みのプログラムをアップデートする場合、アップデート後のプログラムの動作で不具合が生じる場合がある。 When updating an installed program, problems may occur in the operation of the updated program.
本明細書は、プログラムのインストールに用いるプログラムであって、インストールしたプログラムを適切に動作させる技術を開示する。 This specification is a program used for installing a program, and discloses a technique for appropriately operating the installed program.
この課題の解決を目的としてなされたインストール用のプログラムは、情報処理装置のコンピュータに、インストール対象のプログラムである対象プログラムについて、バージョン違いプログラムもしくは同バージョンプログラムが前記情報処理装置にインストール済みであるか否かを判断するインストール判断処理を実行させ、さらに前記コンピュータに、前記バージョン違いプログラムも前記同バージョンプログラムもどちらもインストール済みでないと前記インストール判断処理にて判断した場合に、前記対象プログラムを前記情報処理装置にインストールするためのインストール処理を実行させ、前記バージョン違いプログラムがインストール済みであると前記インストール判断処理にて判断した場合に、第1更新手順を回避するための回避処理を実行させ、前記第1更新手順は、インストール済みの前記バージョン違いプログラムをアンインストールせずに前記対象プログラムをインストールする手順である、ことを特徴としている。 The installation program made for the purpose of solving this problem is the computer of the information processing device, and whether the target program to be installed has a different version program or the same version program already installed in the information processing device. When the installation determination process for determining whether or not to perform is executed, and the installation determination process determines that neither the version difference program nor the same version program has been installed on the computer, the target program is subjected to the information. When the installation process for installing in the processing device is executed and the installation determination process determines that the version difference program has already been installed, the avoidance process for avoiding the first update procedure is executed. The first update procedure is characterized in that the target program is installed without uninstalling the installed different version program.
本明細書に開示されるプログラムによれば、対象プログラムとバージョンが異なるバージョン違いプログラムがインストール済みの場合、そのバージョン違いプログラムをアンインストールすることなく対象プログラムをインストールする第1更新手順を回避する。第1更新手順を実行すると、インストール後の対象プログラムの動作で不具合が発生する可能性が高まる。本プログラムは、この第1更新手順を回避することから、インストール対象の対象プログラムの動作で不具合が生じる可能性を低減でき、対象プログラムが適切に動作する可能性が高まる。 According to the program disclosed in the present specification, when a different version program having a different version from the target program is already installed, the first update procedure for installing the target program without uninstalling the different version program is avoided. When the first update procedure is executed, there is a high possibility that a problem will occur in the operation of the target program after installation. Since this program avoids this first update procedure, it is possible to reduce the possibility that a problem will occur in the operation of the target program to be installed, and the possibility that the target program will operate properly will increase.
上記プログラムによって実現される制御方法、当該プログラムを実行する情報処理装置、当該プログラムを格納するコンピュータにて読取可能な記憶媒体も、新規で有用である。 A control method realized by the above program, an information processing device that executes the program, and a storage medium that can be read by a computer that stores the program are also new and useful.
本明細書に開示される技術によれば、プログラムのインストールに用いるプログラムであって、インストールしたプログラムを適切に動作させる技術が実現される。 According to the technique disclosed in the present specification, a program used for installing a program and a technique for appropriately operating the installed program is realized.
以下、プログラムを具体化した実施の形態について、添付図面を参照しつつ詳細に説明する。本形態は、パーソナルコンピュータ(以下、「PC」とする)にて実行されるプログラムを開示するものである。 Hereinafter, embodiments in which the program is embodied will be described in detail with reference to the attached drawings. This embodiment discloses a program executed by a personal computer (hereinafter referred to as "PC").
本形態のPC1は、プリント機能とスキャン機能との少なくとも一方を有するデバイスと接続可能なものである。PC1は、接続されているデバイスに各種の機能を行わせるための各種のアプリケーションプログラム(以下、「アプリ」とする)を実行可能な装置である。本形態のPC1は、図1に示すように、例えば、複合機2と通信可能に接続され、これらを制御する。PC1は、情報処理装置の一例である。PC1に代えて、例えば、スマートフォン、タブレットコンピュータであっても良い。複合機2は、プリント機能とスキャン機能との両方の機能を有するデバイスである。
The PC 1 of this embodiment can be connected to a device having at least one of a print function and a scan function. The PC 1 is a device capable of executing various application programs (hereinafter referred to as "applications") for causing a connected device to perform various functions. As shown in FIG. 1, the PC 1 of this embodiment is communicably connected to, for example, the
本形態のPC1は、図1に示すように、CPU11と、メモリ12と、を含むコントローラ10を備えている。CPU11は、コンピュータの一例である。また、PC1は、ユーザインタフェース(以下、「ユーザIF」とする)13と、通信インタフェース(以下、「通信IF」とする)14と、を備え、これらがコントローラ10に電気的に接続されている。なお、図1中のコントローラ10は、PC1等の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1等に存在する単一のハードウェアを表すとは限らない。
As shown in FIG. 1, the PC 1 of this embodiment includes a
CPU11は、メモリ12から読み出したプログラムに従って、また、ユーザの操作に基づいて、各種の処理を実行する。メモリ12は、例えば、ROM、RAM、HDD、フラッシュメモリであり、PC1を起動するための起動プログラム等の各種のプログラムや、画像データ、文書データ、各種の設定情報等の各種のデータ、が記憶される記憶領域である。メモリ12は、各種の処理が実行される際の作業領域としても利用される。CPU11が備えるバッファも、メモリの一例である。
The
メモリ12の一例は、PC1に内蔵されるHDD等に限らず、CPU11が読み取り可能かつ書き込み可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non−transitoryな媒体である。non−transitoryな媒体には、上記の例の他に、CD−ROM、DVD−ROM等の記録媒体も含まれる。また、non−transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non−transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。
An example of the
ユーザIF13は、情報を画面に表示するハードウェアと、ユーザによる入力操作を受け付けるハードウェアと、を含む。ユーザIF13は、表示用のディスプレイと、キーボード、マウス等との組み合わせであっても良いし、表示機能と入力受付機能とを備えるタッチパネルであっても良い。ユーザIF13は、出力インタフェースの一例と入力インタフェースの一例とを含む。 The user IF 13 includes hardware that displays information on the screen and hardware that accepts input operations by the user. The user IF 13 may be a combination of a display for display, a keyboard, a mouse, or the like, or may be a touch panel having a display function and an input reception function. The user IF 13 includes an example of an output interface and an example of an input interface.
通信IF14は、複合機2等の外部装置と通信を行うためのハードウェアを含む。通信IF14の通信方式は、有線でも無線でも良いし、イーサネット(登録商標)、Wi−Fi(登録商標)、Bluetooth(登録商標)、USB、LAN等、どのような規格の方式でもよい。また、通信IF14は、複数の方式の構成を含んでいても良い。
The communication IF 14 includes hardware for communicating with an external device such as the
PC1のメモリ12には、図1に示すように、オペレーティングシステム(以下、「OS」とする)41と、プリンタドライバXU45、スキャナドライバXU46と、インストーラ47と、が組み込まれている。OS41は、例えば、Windows(登録商標)、macOS(登録商標)、iOS(登録商標)、Android(登録商標)、Linux(登録商標)である。
As shown in FIG. 1, the
プリンタドライバは、プリント機能を有するデバイスと通信を行って、印刷のための動作を制御するプログラムである。本形態のプリンタドライバXU45は、モデルXの複合機2とUSBによる通信を行って印刷を行わせるためのプログラムである。プリンタドライバXU45は、印刷に関するパラメータの編集指示、例えば、印刷媒体としての用紙種類や用紙サイズの選択、印字品質の指定、給紙トレイや排紙トレイの選択、を受け付ける。プリンタドライバXU45が受け付ける印刷パラメータには、複数の項目が含まれる。
A printer driver is a program that communicates with a device having a print function and controls an operation for printing. The printer driver XU45 of this embodiment is a program for communicating with the
スキャナドライバは、スキャン機能を有するデバイスと通信を行って、原稿の画像の読取のための動作を制御するプログラムである。本形態のスキャナドライバXU46は、モデルXの複合機2とUSBによる通信を行って原稿の画像の読み取りを行わせるためのプログラムである。スキャナドライバXU46は、読み取りに関するパラメータの編集指示、例えば、原稿サイズの選択、カラー読取/モノクロ読取の選択、読取解像度の指定、を受け付ける。スキャナドライバXU46が受け付ける読取パラメータには、複数の項目が含まれる。
A scanner driver is a program that communicates with a device having a scanning function and controls an operation for reading an image of a document. The scanner driver XU46 of this embodiment is a program for communicating with the
インストーラ47は、複合機2等のデバイスを制御するプリンタドライバやスキャナドライバを、PC1にインストールするために使用されるインストール用のプログラムである。プリンタドライバやスキャナドライバは、対応するデバイスのモデルや通信IFの種類ごとにそれぞれ異なるプログラムであり、機能の追加や不具合の解消のために適宜更新される。
The
例えば、PC1にインストール済みのプリンタドライバXU45やスキャナドライバXU46が更新された場合、更新後のプログラムのインストールを希望するユーザは、図1に示すように、PC1にインストーラ47を組み込んで、インストーラ47を実行させる。また、PC1と複合機2とをUSB以外の通信方法で接続して使用する場合も、異なるプログラムが必要となることから、インストーラ47を実行させる必要がある。インストーラ47は、例えば、複合機2のベンダによって管理されるサーバからダウンロードされて、PC1に組み込まれる。インストーラ47は、CD−ROMやDVD−ROM等から読み込まれても良い。
For example, when the printer driver XU45 or the scanner driver XU46 installed on the PC1 is updated, a user who wants to install the updated program installs the
なお、本形態のインストーラ47は、例えば、デバイスのシリーズごとに用意されて配布される。デバイスの各シリーズには、複数のモデルのデバイスが含まれる場合がある。つまり、インストーラ47は、複数のモデルのデバイスにそれぞれ対応する複数のプログラムを含む場合がある。そのため、複合機2と同じシリーズの複合機をPC1に新たに接続する場合にも、PC1に同じインストーラ47が組み込まれる。
The
インストーラ47は、図1に示すように、デバイスのモデルや通信IFの種類ごとにそれぞれ異なる複数のセットアップファイルを含む。各セットアップファイルは、インストール対象のプログラムと、そのプログラムをインストールする際に使用されるインストール情報と、を含む。インストーラ47に含まれる各セットアップファイルには、プリント用又はスキャン用を示す機能と、デバイスのモデルと、通信の種類と、の少なくとも1つが異なる場合、異なる名称が付けられている。
As shown in FIG. 1, the
本形態のインストーラ47は、例えば、図1に示すように、プリンタドライバXUのセットアップファイルであるプリントXUセット71と、スキャナドライバXUのセットアップファイルであるスキャンXUセット72と、を含む。プリントXUセット71は、プリンタドライバXU711と、プリンタドライバXU711をインストールする際に使用されるインストール情報712と、を含む。スキャンXUセット72は、スキャナドライバXU721と、スキャナドライバXU721をインストールする際に使用されるインストール情報722と、を含む。
As shown in FIG. 1, the
本形態のインストーラ47は、さらに、複合機2とLANにて通信するためのプリンタドライバやスキャナドライバのセットアップファイルである、プリントXLセット73やスキャンXLセット74を含む。インストーラ47は、さらに、複合機2とは異なるモデルYの複合機用のプリンタドライバやスキャナドライバのセットアップファイルである、プリントYLセット75やスキャンYLセット76を含む。各セット73〜76も、インストール対象のプログラムとインストール情報とを含む。インストーラ47は、さらに、複合機2等のデバイスの機能を利用するアプリやツールのプログラムをインストールするためのセットアップファイルを含んでも良い。
The
インストーラ47は、インストール対象のプログラムを含むセットアップファイルの指定を受け付け、受け付けたセットアップファイルに含まれるプログラムを、PC1にインストールする。各種のOS41のなかには、所定の形式のファイルとインストールの指示を受け取ることで、インストールのための処理を行う機能を有するものがある。そのようなOS41を使用するPC1では、インストーラ47は、セットアップファイルをOS41に渡して、OS41にインストールのための処理を実行させる。
The
OS41は、受け取ったセットアップファイルに含まれるインストール情報を用いて、セットアップファイルに含まれる対象プログラムをPC1にインストールし、インストールが完了したら、インストール完了をインストーラ47に通知する。また、OS41は、インストール済みのプログラムをアンインストールする機能も有し、アンインストールが完了したらアンインストール完了を通知する。セットアップファイルとしては、Windowsにて使用される「.msi」ファイルが該当する。
The
なお、セットアップファイルは、インストール対象のプログラムを含み、インストール情報を含まないものであっても良い。その場合、インストーラ47は、セットアップファイルと、そのセットアップファイルに対応するインストール情報とをOS41に渡すことで、OS41にインストールのための処理を実行させる。インストーラ47は、例えば、複合機2のベンダによって管理されるサーバからダウンロードすることでインストール情報を取得しても良い。また、インストーラ47は、ユーザ操作によって指定されたファイルを読み込んで、インストール情報を取得しても良い。
The setup file may include the program to be installed and may not include the installation information. In that case, the
プリンタドライバやスキャナドライバは、適宜更新されることから、それぞれバージョン情報が付加されている。インストーラ47は、その配布時期などによって、異なるバージョンのプログラムを含む可能性がある。例えば、PC1にインストール済みのプリンタドライバXU45と、インストーラ47に含まれるプリントXUセット71のプリンタドライバXU711とは、名称が同じであってもバージョンが異なる可能性がある。なお、同じシルーズの異なるモデル用のプログラムや、同じモデルで通信IFの種類が異なるプログラムでは、一部のモジュールが共通の場合がある。共通のモジュールが更新された場合、そのモジュールを使用する全てのプログラムのバージョン情報が更新される。
Since the printer driver and the scanner driver are updated as appropriate, version information is added to each. The
インストーラ47は、OS41がWindowsであれば、OS41によって管理されるレジストリを参照することで、そのプログラムがPC1にインストール済みであるか否かの情報、および、インストール済みであればそのバージョン情報を取得できる。同じ名称で同じバージョンのプログラムは、全く同一のプログラムであり、同バージョンプログラムの一例である。一方、同じ名称であってバージョンの異なるプログラムは、一部が異なるプログラムであり、バージョン違いプログラムの一例である。また、名称の異なるプログラムは、多くの部分が異なる別プログラムである。
If the
なお、プログラムの識別は、名称によるものに限らない。インストール済みのプログラムとインストール対象のプログラムとの対応関係が識別できれば良く、例えば、各プログラムに付与されるID番号によっても良い。 The identification of the program is not limited to the name. It suffices if the correspondence between the installed program and the program to be installed can be identified, and for example, the ID number assigned to each program may be used.
そして、バージョンの異なるプリンタドライバやスキャナドライバでは、使用するパラメータの形式が異なる場合がある。パラメータの形式が異なる場合、バージョンアップ前のプログラムで使用していたパラメータを残したまま、そのパラメータをバージョンアップ後のプログラムで使用すると、不具合が生じる可能性がある。例えば、ある項目のパラメータにて選択可能な選択肢の数が、バージョンアップによって変更される場合がある。パラメータの情報には、選択肢とその選択肢が選択された場合に適用される情報とが組み合わせて記憶されており、選択肢の数が変更されると使用する記憶領域の大きさが異なることから、他の項目のパラメータの情報が乱される可能性がある。そのため、既にインストール済みのプログラムに対して、バージョンの異なるプログラムを安易に上書きしてインストールすることは好ましくない。 The format of the parameters used may differ between printer drivers and scanner drivers of different versions. If the parameter format is different, a problem may occur if the parameter used in the program before the version upgrade is left and the parameter is used in the program after the version upgrade. For example, the number of options that can be selected with the parameters of a certain item may be changed by version upgrade. The parameter information is stored in combination with the options and the information applied when the options are selected, and the size of the storage area used differs when the number of options is changed. The parameter information of the item may be disturbed. Therefore, it is not preferable to easily overwrite and install a program having a different version on a program that has already been installed.
しかし、例えば、OS41によるインストール機能を用いた場合、同じ名称のプログラムがPC1にインストール済みであれば、インストール対象として指定されたプログラムがインストール済みのプログラムに上書きしてインストールされる可能性がある。そのため、インストール済みのプログラムをアンインストールせずに、インストール対象のプログラムのインストールを行うと、インストール後のプログラムの動作で不具合が発生する可能性がある。 However, for example, when the installation function by OS41 is used, if a program having the same name is already installed on the PC1, the program specified as the installation target may overwrite the installed program and be installed. Therefore, if the program to be installed is installed without uninstalling the installed program, a problem may occur in the operation of the program after installation.
次に、インストーラ47によるセットアップ手順について、フローチャートを参照して説明する。なお、以下の処理およびフローチャートの各処理ステップは、基本的に、プログラムに記述された命令に従ったCPU11の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「取得」、「受付」、「制御」等の処理は、CPU11の処理を表している。CPU11による処理は、PC1のOSのAPIを用いたハードウェア制御も含む。本明細書では、OSの記載を省略して各プログラムの動作を説明する。すなわち、以下の説明において、「プログラムBがハードウェアCを制御する」という趣旨の記載は、「プログラムBがOSのAPIを用いてハードウェアCを制御する」ことを指してもよい。また、プログラムに記述された命令に従ったCPU11の処理を、省略した文言で記載することがある。例えば、「CPU11が行う」のように記載することがある。また、プログラムに記述された命令に従ったCPU11の処理を、「プログラムAが行う」のようにCPUを省略した文言で記載することがある。
Next, the setup procedure by the
なお、「取得」は要求を必須とはしない概念で用いる。すなわち、CPU11が要求することなくデータを受信するという処理も、「CPU11がデータを取得する」という概念に含まれる。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。また、「要求する」、「指示する」とは、要求していることを示す情報や、指示していることを示す情報を相手に出力することを示す概念である。また、要求していることを示す情報や指示していることを示す情報のことを、単に、「要求」、「指示」とも記載する。
Note that "acquisition" is used in a concept that does not require a request. That is, the process of receiving the data without the
また、CPU11による、情報Aは事柄Bであることを示しているか否かを判断する処理を、「情報Aから、事柄Bであるか否かを判断する」のように概念的に記載することがある。CPU11による、情報Aが事柄Bであることを示しているか、事柄Cであることを示しているか、を判断する処理を、「情報Aから、事柄Bであるか事柄Cであるかを判断する」のように概念的に記載することがある。
Further, the process of determining whether or not the information A indicates that the information A is the matter B by the
以下、セットアップ処理の手順について、図2のフローチャートを参照して説明する。このセットアップ処理は、PC1にてインストーラ47が起動されたことを契機に、PC1のCPU11にて実行される。
Hereinafter, the procedure of the setup process will be described with reference to the flowchart of FIG. This setup process is executed by the
セットアップ処理では、CPU11は、ユーザによる各種の選択を受け付けるための選択受付画面をユーザIF13に表示させる(S101)。そして、CPU11は、モデルの選択を受け付け(S102)、通信IF14の種類の選択を受け付け(S103)、機能の選択を受け付ける(S104)。S102〜S104により、CPU11は、インストール対象のプログラムである対象プログラムを決定する。すなわち、CPU11は、インストール対象のプログラムを含むセットアップファイルを決定する。S102〜S104は、プログラム選択処理の一例である。
In the setup process, the
S102にて受け付けるモデルの選択は、第2選択の一例であり、S102にて選択されたモデルのデバイスは、選択デバイスの一例である。また、S103にて受け付ける通信IF14の種類の選択は、第1選択の一例であり、S103にて選択された通信IF14の種類は、選択インタフェースの一例である。対象プログラムは、S103にて選択された通信IFを用いてS102にて選択されたモデルのデバイスと通信するためのプログラムである。 The selection of the model accepted in S102 is an example of the second selection, and the device of the model selected in S102 is an example of the selection device. Further, the selection of the type of communication IF14 received in S103 is an example of the first selection, and the type of communication IF14 selected in S103 is an example of the selection interface. The target program is a program for communicating with the device of the model selected in S102 using the communication IF selected in S103.
選択受付画面は、例えば、図3に示すように、モデル、通信IFの種類、機能、のそれぞれの選択を受け付ける各ラジオボタンと、OKボタン511とを含む選択受付画面51である。各ラジオボタンは、その項目の複数の選択肢のうちの1つの選択を受け付けるボタンである。CPU11は、選択受付画面51中のOKボタン511への操作を受け付けた場合、その時点で選択されている内容をユーザの選択として受け付ける。例えば、図3に示すように、モデルとして「モデルX」、通信IFの種類として「LAN」、機能として「プリント」が選択された状態でOKボタン511が操作された場合、CPU11は、プリントXLセット73(図1参照)をインストール対象のプログラムを含むセットアップファイルとして決定する。
As shown in FIG. 3, the selection reception screen is, for example, a
プリンタドライバやスキャナドライバは、デバイスのモデルおよび通信IFの種類ごとに設けられる。本形態のインストーラ47は、複数のセットアップファイルを含み、その中からセットアップファイルの選択を受け付けて、選択されたセットアップファイルのインストールを実行するインストーラである。1つのセットアップファイルのみを含むインストーラであれば、インストール対象のプログラムごとに異なるインストーラをPC1に組み込む必要がある。本形態のインストーラ47は、複数のプログラムを選択的にインストール可能な1つのインストールパッケージとして提供されるので、そのようなユーザの手間を軽減できる。
Printer drivers and scanner drivers are provided for each device model and communication IF type. The
なお、図3では、モデル、通信IFの種類、機能の全てを受け付ける1つの画面の例を示しているが、それぞれの項目ごとに異なる画面で順次受け付けても良い。また、ラジオボタンに限らず、複数のプログラムを選択可能に受け付ける画面であっても良い。例えば、各選択肢にチェックボックスを設け、複数の選択肢を選択する操作を受け付けても良い。複数の選択肢が選択された場合、CPU11は、複数のセットアップファイルをインストール対象として決定し、セットアップファイルごとに以後の処理(図2のS105〜S113の処理)を実行する。例えば、モデルX、LAN、プリントとスキャン、が選択された場合、CPU11は、プリントXLセット73の処理を実行し、続けて、スキャンXLセット74の処理を実行する。
Although FIG. 3 shows an example of one screen that accepts all of the model, the type of communication IF, and the function, it may be sequentially accepted on a different screen for each item. Further, the screen is not limited to the radio button, and may be a screen that accepts a plurality of programs in a selectable manner. For example, a check box may be provided for each option to accept an operation for selecting a plurality of options. When a plurality of options are selected, the
CPU11は、対象プログラムを決定した後、選択された対象プログラムがPC1にインストール済みであるか否かを判断する(S105)。S105は、インストール判断処理の一例である。S105では、CPU11は、選択された対象プログラムと同じ名称のプログラムがインストール済みであれば、バージョンの一致/不一致に関わらず、インストール済みであると判断する。CPU11は、例えば、OS41がWindowsであれば、レジストリを参照することで、S105の判断を行う。
After determining the target program, the
対象プログラムがPC1にインストール済みではないと判断した場合(S105:NO)、つまり、バージョン違いプログラムも同バージョンプログラムもどちらもインストール済みではないと判断した場合、CPU11は、対象プログラムのインストールを行う(S106)。S106は、インストール処理の一例である。
When it is determined that the target program is not installed on PC1 (S105: NO), that is, when it is determined that neither the different version program nor the same version program is installed, the
例えば、図1の構成では、プリンタドライバXU45とスキャナドライバXU46がインストール済みであることから、プリントXUセット71やスキャンXUセット72が選択された場合には、CPU11は、S105にてインストール済みであると判断する。一方、対象プログラムとして、通信IF14の種類が異なるプリントXLセット73やスキャンXLセット74、または、モデルの異なる複合機用のプリントYLセット75やスキャンYLセット76、が選択された場合、CPU11は、S105にてインストール済みではないと判断する。新規のプログラムをインストールする場合には、インストールによる不具合が発生する可能性は低く、CPU11は、対象プログラムをインストールする。
For example, in the configuration of FIG. 1, since the printer driver XU45 and the scanner driver XU46 are already installed, when the print XU set 71 or the scan XU set 72 is selected, the
OS41がインストール機能を有している場合、CPU11は、対象プログラムを含むセットアップファイルを取得し、取得したセットアップファイルをOS41に渡してインストールを指示する。OS41が対象プログラムのインストールを行うことで、インストールに必要なインストーラ47の処理がシンプルになる。
When the
CPU11は、インストールが完了したら、完了を示すメッセージをユーザIF13に表示させて(S107)。OS41のインストール機能を利用した場合、CPU11は、OS41からインストール完了の通知を受け取った後、S107を行う。
When the installation is completed, the
一方、対象プログラムがPC1にインストール済みであると判断した場合(S105:YES)、CPU11は、インストール済みのプログラムと対象プログラムとのバージョンが同じであるか否かを判断する(S108)。対象プログラムのバージョン情報は、選択されたセットアップファイルから取得できる。取得したバージョン情報に基づいて、CPU11は、インストール済みのプログラムが、バージョン違いプログラムであるか、同バージョンプログラムであるか、を判断する。例えば、図1の構成で、対象プログラムとしてプリントXUセット71が選択され、プリンタドライバXU711とプリンタドライバXU45とのバージョンが一致している場合、CPU11は、同バージョンプログラムであると判断する。
On the other hand, when it is determined that the target program is already installed in the PC 1 (S105: YES), the
同バージョンプログラムであると判断した場合(S108:YES)、CPU11は、インストールを実行せず、インストール済みのプログラムが最新であることを示す最新メッセージをユーザIF13に表示させる(S109)。最新メッセージは、例えば、図4に示すように、既に最新のプログラムがインストール済みであって、セットアップを終了させることを報知するメッセージ52である。メッセージ52は、対象プログラムのインストールをしないことを示す通知であり、S109は、通知処理の一例である。
If it is determined that the program is the same version (S108: YES), the
S107またはS109の後、CPU11は、表示させたメッセージを終了させるユーザの操作を受け付けたか否かを判断する(S110)。そして、受け付けていないと判断した場合(S110:NO)、CPU11は、受け付けるまで待機する。受け付けたと判断した場合(S110:YES)、CPU11は、メッセージの表示を終了して、セットアップ処理を終了する。
After S107 or S109, the
CPU11は、例えば、図4に示すメッセージ52中のOKボタン521への操作を受け付けた場合、S110にてYESと判断する。同バージョンプログラムがインストール済みの場合には対象プログラムをインストールする必要が無い。単に、インストールしないことを通知することで、ユーザにインストールしていないことが伝わり、また、無駄な処理を行わずに済む。なお、CPU11は、メッセージの表示後、所定の時間が経過してもユーザの操作を受け付けなかった場合、セットアップ処理を終了させても良い。
For example, when the
インストール済みのプログラムと対象プログラムとのバージョンが同じではない、つまり、バージョン違いプログラムであると判断した場合(S108:NO)、CPU11は、更新処理を実行する(S111)。例えば、図1の構成で、インストール対象として、スキャンXUセット72が選択され、スキャナドライバXU721とスキャナドライバXU46とのバージョンが一致していない場合、CPU11は、バージョン違いプログラムであると判断する。更新処理は、インストール済みのバージョン違いプログラムを、対象プログラムによって更新する処理である。更新処理の手順について、図5のフローチャートを参照して説明する。
When it is determined that the versions of the installed program and the target program are not the same, that is, the programs are different versions (S108: NO), the
更新処理では、CPU11は、インストール済みのプログラムをアンインストールする必要があることを報知する要アンインストールメッセージをユーザIF13に表示させる(S201)。前述したように、バージョンアップによってパラメータの形式が変更されている可能性があり、その場合には、旧バージョンをアンインストールせずにインストールを行うことは好ましくない。要アンインストールメッセージは、インストール済みのバージョン違いプログラムをアンインストールする旨を示す通知の一例である。
In the update process, the
要アンインストールメッセージは、例えば、図6に示すように、アンインストールを行ってセットアップを継続するか否かをユーザに問い合わせるメッセージ53である。CPU11は、例えば、図6に示すように、メッセージ53として、セットアップ中止ボタン531と、設定保持ボタン532と、設定初期化ボタン533とを表示させ、ユーザの選択を受け付ける。なお、単にアンインストールを行うと、インストール済みのプログラムで受け付けたユーザによる設定は、全て初期化される。そこで、CPU11は、メッセージ53にて、設定を初期化するか否かも合わせて問い合わせている。
The uninstall required message is, for example, a
そして、CPU11は、セットアップを中止する指示を受け付けたか否かを判断する(S202)。CPU11は、例えば、メッセージ53のセットアップ中止ボタン531への操作、セットアップ処理のウィンドウを閉じる操作、によって、セットアップを中止する指示を受け付ける。セットアップを中止する指示を受け付けたと判断した場合(S202:YES)、CPU11は、対象プログラムをインストールせずに、この更新処理および図2のセットアップ処理を終了させる。
Then, the
この場合、OS41が対象プログラムのインストールを行う機能を有している場合でも、CPU11は、OS41にセットアップファイルを渡さない。セットアップファイルをOS41に渡さないことで、シンプルな処理で、インストール済みのプログラムをアンインストールせずに対象プログラムをインストールする手順を回避できる。
In this case, even if the
セットアップを中止する指示を受け付けていないと判断した場合(S202:NO)、CPU11は、クリーンインストールを行う指示を受け付けたか否かを判断する(S203)。S203は、インストール選択処理の一例である。クリーンインストールは、インストール済みのプログラムを単にアンインストールし、その後に対象プログラムをインストールする手順であり、ユーザによる設定は全て初期化される。例えば、メッセージ53の設定初期化ボタン533への操作を受け付けた場合、CPU11は、クリーンインストールを行う指示を受け付けたと判断する。
When it is determined that the instruction to cancel the setup is not accepted (S202: NO), the
クリーンインストールを行う指示を受け付けたと判断した場合(S203:YES)、CPU11は、インストール済みのプログラムをアンインストールする(S204)。CPU11は、例えば、プログラムを指定してOS41にアンインストールの指示を渡す。そして、CPU11は、アンインストールに成功したか否かを判断する(S205)。CPU11は、例えば、OS41からアンインストールに成功したことを示す情報を受け取った場合、アンインストールに成功したと判断する。
When it is determined that the instruction to perform the clean installation has been accepted (S203: YES), the
アンインストールに成功したと判断した場合(S205:YES)、CPU11は、対象プログラムをインストールする(S206)。CPU11は、例えば、対象プログラムを含むセットアップファイルをOS41に渡してインストールを指示する。S204の後にS206を行う手順は、第2更新手順の一例であり、S204とS206とは、クリーンインストール処理の一例である。クリーンインストールの実行を選択できることで、ユーザが自らアンインストールする手間を省くことができる。
When it is determined that the uninstallation is successful (S205: YES), the
アンインストールに成功しなかったと判断した場合(S205:NO)、CPU11は、失敗を報知する(S207)。S206またはS207の後、CPU11は、更新処理を終了して、セットアップ処理に戻る。アンインストールに失敗してバージョン違いプログラムが残ったまま対象プログラムのインストールを指示すると、対象プログラムがバージョン違いプログラムに上書きされる可能性が高い。このようにすると、新たにインストールした対象プログラムの動作で不具合が発生する可能性が高まる。そこで、バージョン違いプログラムのアンインストールが確実に成功したことを契機に対象プログラムをインストールすることで、不具合が発生する可能性を低減できる。
If it is determined that the uninstallation was not successful (S205: NO), the
一方、クリーンインストールを行う指示を受け付けていないと判断した場合(S203:NO)、つまり、メッセージ53の設定保持ボタン532への操作を受け付けたと判断した場合、CPU11は、インストール済みのプログラムのパラメータの形式を示す情報と、対象プログラムのパラメータの形式を示す情報とを取得する(S210)。
On the other hand, when it is determined that the instruction to perform the clean installation is not accepted (S203: NO), that is, when it is determined that the operation to the
そして、CPU11は、S210にて取得した情報に基づいて、インストール済みのプログラムのパラメータの形式と対象プログラムのパラメータの形式とが、同じ形式であるか否かを判断する(S211)。CPU11は、例えば、選択されたインストール対象のプログラムにて使用されるパラメータの項目数や選択肢の数が、インストール済みのプログラムと同じであれば、パラメータの形式が同じであると判断する。パラメータの形式が同じであれば、インストール済みのプログラムにて使用されるパラメータを、設定されている選択肢を含めてそのままで、対象プログラムでも使用可能である。S211は、互換性判断処理の一例である。
Then, the
パラメータの形式を示す情報として、CPU11は、例えば、バージョン情報の特定の桁の数値を取得する。例えば、インストール済みのプログラムのバージョン情報がバージョン1.1.0を示す情報である場合、CPU11は、対象プログラムのバージョン情報が、バージョン1.2.0を示す情報であればパラメータの形式は異なっており、バージョン1.1.1を示す情報であればパラメータの形式は同じであると判断する。この例では、バージョン情報の上から2つめの桁の数値が一致していれば、CPU11は、パラメータの形式は同じであると判断する。
As information indicating the format of the parameter, the
パラメータの形式が同じではないと判断した場合(S211:NO)、CPU11は、インストール済みのプログラムが用いるパラメータを退避する(S212)。S212は、記憶処理の一例である。同じ形式ではない場合、インストール済みのプログラムが用いるパラメータは、第1形式のパラメータの一例であり、対象プログラムが用いるパラメータは、第2形式のパラメータの一例である。
When it is determined that the parameter formats are not the same (S211: NO), the
S212では、具体的には、CPU11は、インストール済みのプログラムが用いるパラメータの項目と各項目に選択されている選択肢の情報とをメモリ12から読み出し、読み出した情報を、インストーラ47によって利用可能な領域であって、インストール済みのプログラムが利用する領域以外の領域に、記憶する。インストール済みのプログラムが利用する領域は、第1記憶領域の一例であり、インストーラ47によって利用可能な領域は、第2記憶領域の一例である。
In S212, specifically, the
パラメータを退避した後、CPU11は、インストール済みのプログラムをアンインストールする(S213)。S213は、アンインストール処理の一例である。CPU11は、例えば、OS41にアンインストールを指示する。そして、OS41からアンインストールに成功したことを示す情報を取得したか否かを判断する(S214)。
After saving the parameters, the
アンインストールに成功したと判断した場合(S214:YES)、CPU11は、対象プログラムをインストールする(S215)。S215は、再インストール処理の一例である。CPU11は、例えば、対象プログラムを含むセットアップファイルをOS41に渡してインストールを指示する。
When it is determined that the uninstallation is successful (S214: YES), the
さらに、CPU11は、S212にて退避したパラメータをインストールした対象プログラムのパラメータの形式に合わせて復元する(S216)。S216は、復元処理の一例である。CPU11は、退避したパラメータの各項目の値を、新たなパラメータの対応する項目の値として、インストールした対象プログラムが利用する領域に書き込む。インストールした対象プログラムが利用する領域は、第3記憶領域の一例である。インストールした対象プログラムが利用する領域は、アンインストールの前にインストール済みのプログラムが利用していた領域と同じ領域を含んでいても良いし、異なっていても良い。
Further, the
なお、退避したパラメータと対象プログラムのパラメータとで形式が異なる場合には、CPU11は、形式を変換し、変換後のパラメータを書き込む。形式を変更して復元することで、対象プログラムが適切に動作する可能性が高まる。S212〜S216の処理は、インストール済みのバージョン違いプログラムをアンインストールしてから、対象プログラムをインストールする処理であり、回避処理の一例である。
If the format is different between the saved parameter and the parameter of the target program, the
例えば、図1の構成で、対象プログラムとして、スキャンXUセット72が選択された場合、スキャナドライバXU46にて選択されていた読取パラメータが退避された後、記憶済みのスキャナドライバXU46が削除される。さらに、新たにスキャナドライバXU721がメモリ12に記憶された後、退避された読取パラメータが、新たに記憶されたスキャナドライバXU721の読取パラメータとして設定される。これにより、以前のプログラムにて使用していた設定が新バージョンのプログラムでも使用できる。
For example, in the configuration of FIG. 1, when the scan XU set 72 is selected as the target program, the stored scanner driver XU46 is deleted after the reading parameters selected by the scanner driver XU46 are saved. Further, after the scanner driver XU721 is newly stored in the
アンインストールに成功しなかったと判断した場合(S214:NO)、CPU11は、失敗を報知する(S217)。S216またはS217の後、S212にて退避したパラメータの情報を削除して(S218)、更新処理を終了し、セットアップ処理に戻る。
If it is determined that the uninstallation was not successful (S214: NO), the
一方、インストール済みのプログラムのパラメータの形式と対象プログラムのパラメータの形式とが、同じ形式であると判断した場合(S211:YES)、CPU11は、インストール済みのプログラムをアンインストールすることなく、対象プログラムのインストールをOS41に指示する(S221)。S221は、アップデート処理の一例である。これにより、インストールされた対象プログラムは、インストール済みのプログラムに上書きされる。インストール済みのバージョン違いプログラムをアンインストールせずに、対象プログラムをインストールする手順は、第1更新手順の一例である。バージョンが異なってもパラメータに互換性が有る場合は上書きによるインストールを行っても不具合が生じ難いため、この手順を行うことで、アンインストールの手間を省くことができる。
On the other hand, when it is determined that the parameter format of the installed program and the parameter format of the target program are the same format (S211: YES), the
インストールの後、CPU11は、プリントキューが追加されたか否かを判断する(S222)。対象プログラムがプリンタドライバであって、OS41にインストールを実行させた場合、指定されたデバイスと指定された通信IFの種類とに対応するプリントキューが生成され、OS41に登録される。アンインストールを行わずにインストールした場合、同じデバイスと同じ通信IFに対応する複数のプリントキューが生成されることになる。プリントキューは、デバイスキューの一例である。なお、OS41は、プリンタドライバをアンインストールした場合、対応するプリントキューを削除する。
After the installation, the
プリントキューが追加されたと判断した場合(S222:YES)、CPU11は、新たに生成されたプリントキューを削除する(S223)。S223は、削除処理の一例である。重複した無駄なプリントキューを削除することでリソースの有効活用が図られる。S223の後、または、対象プログラムがプリンタドライバではない場合など、プリントキューが追加されていないと判断した場合(S222:NO)、CPU11は、更新処理を終了して、セットアップ処理に戻る。
When it is determined that the print queue has been added (S222: YES), the
図2のセットアップ処理の説明に戻る。CPU11は、S111の更新処理の後、更新処理にてインストールを実行したか否かを判断する(S112)。更新処理のS206、S215、S221のいずれかを実行した場合、CPU11は、対象プログラムのインストールを実行したと判断する。インストールを実行したと判断した場合(S112:YES)、CPU11は、更新メッセージをユーザIF13に表示させる(S113)。更新メッセージは、プログラムを最新バージョンに更新した旨を報知するメッセージである。
Returning to the description of the setup process of FIG. After the update process of S111, the
一方、更新処理にて、S202にてYESと判断した場合やアンインストールに成功しなかった場合には、CPU11は、インストールを実行しなかったと判断する。S113の後、または、インストールを実行しなかったと判断した場合(S112:NO)、CPU11は、セットアップ処理を終了する。
On the other hand, in the update process, if YES in S202 or if the uninstallation is not successful, the
なお、インストーラ47は、アンインストールが必要であると判断した場合、アンインストールを行う代わりに、単にアンインストールが必要であることを報知するメッセージを表示して終了する構成であっても良い。そのようなインストーラ47によるセットアップ処理の手順について、図7のフローチャートを参照して説明する。このセットアップ処理は、PC1にてインストーラ47が起動されたことを契機に、PC1のCPU11にて実行される。図7では、図2と同じ手順については、同じ符号を付して説明を省略する。
If it is determined that the
図7に示すセットアップ処理では、CPU11は、図2の処理と同様に、選択受付画面をユーザIFに表示させて、ユーザの選択を受け付ける(S101〜S104)。さらに、CPU11は、選択された対象プログラムがPC1にインストール済みであるか否かを判断し(S105)、インストール済みであると判断した場合(S105:YES)、バージョンが同じであるか否かを判断する(S108)。インストール済みでないと判断した場合(S105:NO)、または、バージョンが同じであると判断した場合(S108:YES)、CPU11は、図2と同じ手順を実行する(S106〜S107、S109〜S110)。
In the setup process shown in FIG. 7, the
一方、バージョンが同じではないと判断した場合(S108:NO)、CPU11は、アンインストールメッセージをユーザIF13に表示させる(S301)。アンインストールメッセージは、例えば、図8に示すように、インストール済みのバージョン違いプログラムのアンインストールが必要であることを報知するメッセージ55である。メッセージ55には、OKボタン551が含まれる。
On the other hand, if it is determined that the versions are not the same (S108: NO), the
CPU11は、表示させたメッセージ55中のOKボタン551への操作を受け付けたか否かを判断する(S302)。そして、受け付けていないと判断した場合(S302:NO)、CPU11は、受け付けるまで待機する。受け付けたと判断した場合(S302:YES)、CPU11は、メッセージ55の表示を終了して、セットアップ処理を終了する。なお、CPU11は、メッセージの表示後、所定の時間が経過してもユーザの操作を受け付けなかった場合、セットアップ処理を終了させても良い。この場合、CPU11は、対象プログラムをインストールせず、また、更新処理を実行せず、このセットアップ処理を終了させる。なお、通知は、メッセージ表示の他、例えば音声ガイダンスであってもよい。
The
このようにしても、メッセージ55によってアンインストールが必要である旨を通知することで、インストール済みのバージョン違いプログラムについてユーザによるアンインストール操作が期待できる。ユーザは、例えば、都合の良いタイミングでインストール済みのプログラムをアンインストールして、再度インストーラ47を起動することができる。アンインストール後に実行されるセットアップ処理では、図7のS105にてNOと判断されることから、対象プログラムが適切にインストールされる。
Even in this way, by notifying by
以上、詳細に説明したように、本形態のインストーラ47によれば、対象プログラムとバージョンが異なるバージョン違いプログラムがインストール済みの場合、そのバージョン違いプログラムをアンインストールすることなく対象プログラムをインストールする手順を回避する。バージョン違いプログラムがインストール済みの場合、そのバージョン違いプログラムをアンインストールせずに対象プログラムをインストールすると、インストール後の対象プログラムの動作で不具合が発生する可能性が高まる。この手順を回避することで、インストール後の対象プログラムの動作で不具合が生じる可能性を低減できる。
As described in detail above, according to the
さらに、本形態のインストーラ47では、複数の対象プログラムからインストールする対象プログラムを選択可能であり、さらに、デバイスのモデルや通信IFの種類の選択によって対象プログラムが決定されるので、対象プログラムを選択し易い。
Further, in the
また、本形態では、OS41の機能を利用してインストールを行うことから、OS41にセットアップファイルを渡さないことでインストールを回避できる。従って、インストーラ47の処理がシンプルになる。
Further, in this embodiment, since the installation is performed using the function of the
また、本形態では、既に最新バージョンがインストール済みである場合、アンインストールが必要である場合、対象プログラムの更新に成功した場合等に、適宜メッセージにてユーザに通知するので、状況が確認できる。 Further, in this embodiment, when the latest version has already been installed, when it is necessary to uninstall it, when the target program is successfully updated, etc., the user is notified by an appropriate message, so that the situation can be confirmed.
また、本形態では、インストール済みのバージョン違いプログラムとインストール対象の対象プログラムとでパラメータの形式が異なる場合、バージョン違いプログラムのパラメータを退避し、退避したパラメータを、対象プログラムのパラメータの形式に変換して復元する。これにより、バージョン違いプログラムをアンインストールせずに対象プログラムをインストールする手順を回避しつつ、設定済みのパラメータを保持できる。一方、パラメータの形式が同じであれば、そのまま使用できる可能性が高いことから、バージョン違いプログラムをアンインストールせずに対象プログラムをインストールする手順を行うので、退避や復元の処理が不要となる。 Further, in this embodiment, when the parameter format differs between the installed version difference program and the target program to be installed, the parameters of the version difference program are saved and the saved parameters are converted to the parameter format of the target program. To restore. This makes it possible to retain the set parameters while avoiding the procedure of installing the target program without uninstalling the different version program. On the other hand, if the parameter formats are the same, there is a high possibility that they can be used as they are. Therefore, since the procedure for installing the target program is performed without uninstalling the different version program, the process of saving or restoring becomes unnecessary.
なお、本実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、対象プログラムによって制御されるデバイスは、複合機に限らず、プリンタ、スキャナ、FAX装置、ミシン等であっても良い。つまり、インストールの対象となるプログラムは、プリンタドライバ、スキャナドライバに限らず、FAXドライバ、縫製指示プログラム、刺繍指示プログラム、でも良い。また、PCやデバイスの数、各種の表示メッセージの文言等は、いずれも、図示の例に限らない。 It should be noted that the present embodiment is merely an example and does not limit the present invention in any way. Therefore, the techniques disclosed in the present specification can of course be variously improved and modified without departing from the gist thereof. For example, the device controlled by the target program is not limited to the multifunction device, and may be a printer, a scanner, a fax machine, a sewing machine, or the like. That is, the program to be installed is not limited to the printer driver and the scanner driver, but may be a FAX driver, a sewing instruction program, and an embroidery instruction program. Further, the number of PCs and devices, the wording of various display messages, and the like are not limited to the illustrated examples.
また、本形態では、複数の対象プログラムを含むインストーラ47について説明したが、対象プログラムごとに別のインストーラであっても良い。その場合、モデルや通信IFの選択の受け付け(S101〜S104)は不要である。また、各種のメッセージの表示は行わなくても良い。
Further, in the present embodiment, the
また、本形態では、対象プログラムと同じバーションのプログラムがインストール済みであれば、インストールを行わないとしたが、行っても良い。その場合、CPU11は、対象プログラムのセットアップファイルをOS41に渡し、終了後に、例えば、完了を示すメッセージを表示させるとしても良い。
Further, in this embodiment, if a program of the same version as the target program is already installed, the installation is not performed, but it may be performed. In that case, the
また、本形態では、パラメータの形式が同じ場合にはアンインストールしないとしたが、アンインストールしても良い。つまり、パラメータの形式に関わらず退避して復元するとしても良い。ただし、パラメータの形式が同じであれば、不具合が発生する可能性は低いことから、上書きによるインストールを行うことで、セットアップに要する時間を短縮できる。 Further, in this embodiment, if the parameter formats are the same, it is not uninstalled, but it may be uninstalled. That is, it may be saved and restored regardless of the parameter format. However, if the parameter formats are the same, it is unlikely that a problem will occur. Therefore, by performing the installation by overwriting, the time required for setup can be shortened.
また、本形態では、上書きによるインストールによってプリントキューが生成された場合、生成されたプリントキューを削除するとしたが、削除しなくても良い。ただし、削除すれば、デバイスの選択時におけるユーザの困惑を軽減できるので好ましい。 Further, in this embodiment, when the print queue is generated by the installation by overwriting, the generated print queue is deleted, but it is not necessary to delete it. However, deleting it is preferable because it can reduce the user's confusion when selecting a device.
また、本形態では、OS41の機能を用いてインストールやアンインストールを行うとしたが、インストーラ47自身の機能を用いてインストールやアンインストールを行っても良い。
Further, in this embodiment, the installation or uninstallation is performed using the function of the
また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。 Further, in any flowchart disclosed in the embodiment, the plurality of processes in the arbitrary plurality of steps can be arbitrarily changed in the execution order or executed in parallel as long as the processing contents do not conflict with each other.
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。 Further, the process disclosed in the embodiment may be executed by a single CPU, a plurality of CPUs, hardware such as an ASIC, or a combination thereof. In addition, the process disclosed in the embodiment can be realized in various aspects such as a recording medium or a method in which a program for executing the process is recorded.
1 PC
2 複合機
11 CPU
12 メモリ
13 ユーザIF
14 通信IF
47 インストーラ
1 PC
2
12 memory 13 user IF
14 Communication IF
47 installer
Claims (13)
インストール対象のプログラムである対象プログラムについて、バージョン違いプログラムもしくは同バージョンプログラムが前記情報処理装置にインストール済みであるか否かを判断するインストール判断処理を実行させ、
さらに前記コンピュータに、
前記バージョン違いプログラムも前記同バージョンプログラムもどちらもインストール済みでないと前記インストール判断処理にて判断した場合に、前記対象プログラムを前記情報処理装置にインストールするためのインストール処理を実行させ、
前記バージョン違いプログラムがインストール済みであると前記インストール判断処理にて判断した場合に、第1更新手順を回避するための回避処理を実行させ、前記第1更新手順は、インストール済みの前記バージョン違いプログラムをアンインストールせずに前記対象プログラムをインストールする手順である、
ことを特徴とするインストール用のプログラム。 To the computer of the information processing device
For the target program, which is the program to be installed, an installation determination process for determining whether or not a different version program or the same version program has already been installed in the information processing device is executed.
Furthermore, to the computer
When it is determined by the installation determination process that neither the version difference program nor the same version program has been installed, the installation process for installing the target program in the information processing apparatus is executed.
When it is determined by the installation determination process that the version difference program has been installed, an avoidance process for avoiding the first update procedure is executed, and the first update procedure is the installed version difference program. This is the procedure for installing the target program without uninstalling.
A program for installation that features that.
前記コンピュータに、
複数あるインストール可能なプログラムの中から前記対象プログラムを選択するプログラム選択処理を実行させ、
前記インストール判断処理では、前記プログラム選択処理にて選択された前記対象プログラムについて、前記バージョン違いプログラムもしくは前記同バージョンプログラムが前記情報処理装置にインストール済みであるか否かを判断させ、
前記プログラム選択処理にて選択された前記対象プログラムについて、前記バージョン違いプログラムがインストール済みであると前記インストール判断処理にて判断した場合に、前記回避処理を実行させる、
ことを特徴とするインストール用のプログラム。 In the installation program according to claim 1,
On the computer
A program selection process for selecting the target program from a plurality of installable programs is executed, and the program is executed.
In the installation determination process, the target program selected in the program selection process is made to determine whether or not the version difference program or the same version program has already been installed in the information processing apparatus.
When the installation determination process determines that the version difference program has already been installed for the target program selected in the program selection process, the avoidance process is executed.
A program for installation that features that.
前記プログラム選択処理では、
前記情報処理装置がデバイスと通信するための通信インタフェースの種類を選択する第1選択を行い、前記デバイスは、プリント機能とスキャン機能との少なくとも一方を有するデバイスであり、前記複数あるインストール可能なプログラムは、前記デバイスを制御するプログラムであって、前記デバイスのモデルおよび前記通信インタフェースの種類ごとに設けられたプログラムであり、
さらに前記プログラム選択処理では、
前記対象プログラムが制御するデバイスのモデルを選択する第2選択を行い、選択インタフェースを用いて選択デバイスと通信するためのプログラムを、前記対象プログラムとして選択し、前記選択インタフェースは、前記第1選択によって選択した種類の前記通信インタフェースであり、前記選択デバイスは、前記第2選択によって選択したモデルのデバイスであり、
前記インストール判断処理では、
前記プログラム選択処理にて選択された前記対象プログラムについて、前記バージョン違いプログラムもしくは前記同バージョンプログラムが前記情報処理装置にインストール済みであるか否かを判断し、
前記プログラム選択処理にて選択された前記対象プログラムについて、前記バージョン違いプログラムがインストール済みであると前記インストール判断処理にて判断した場合に、前記コンピュータに前記回避処理を実行させる、
ことを特徴とするインストール用のプログラム。 In the installation program according to claim 2.
In the program selection process,
The information processing device makes a first selection to select the type of communication interface for communicating with the device, and the device is a device having at least one of a print function and a scan function, and the plurality of installable programs. Is a program for controlling the device, and is a program provided for each model of the device and the type of the communication interface.
Further, in the program selection process,
A second selection is made to select a model of the device controlled by the target program, a program for communicating with the selected device using the selection interface is selected as the target program, and the selection interface is selected by the first selection. The communication interface of the selected type, the selected device being the device of the model selected by the second selection.
In the installation judgment process,
With respect to the target program selected in the program selection process, it is determined whether or not the version difference program or the same version program is already installed in the information processing apparatus.
When the installation determination process determines that the version difference program has already been installed for the target program selected in the program selection process, the computer is made to execute the avoidance process.
A program for installation that features that.
前記コンピュータに、
前記プログラム選択処理の実行後、前記第1更新手順によって前記対象プログラムをインストールした場合に、前記対象プログラムのインストールによって生成されたデバイスキューを削除する削除処理を実行させ、前記情報処理装置は、前記対象プログラムをインストールした場合、前記選択インタフェースを用いて前記選択デバイスと通信するための前記デバイスキューを生成する、
ことを特徴とするインストール用のプログラム。 In the installation program according to claim 3,
On the computer
After the execution of the program selection process, when the target program is installed by the first update procedure, a deletion process for deleting the device queue generated by the installation of the target program is executed, and the information processing apparatus performs the above-mentioned information processing apparatus. When the target program is installed, the device queue for communicating with the selected device is generated using the selection interface.
A program for installation that features that.
前記インストール処理では、
前記対象プログラムに対応するセットアップファイルを取得し、取得した前記セットアップファイルを前記情報処理装置のオペレーティングシステムに渡して前記オペレーティングシステムにインストールを指示し、前記オペレーティングシステムは、前記セットアップファイルに含まれる前記対象プログラムを前記情報処理装置にインストールする、
ことを特徴とするインストール用のプログラム。 In the installation program according to any one of claims 1 to 4.
In the installation process,
The setup file corresponding to the target program is acquired, the acquired setup file is passed to the operating system of the information processing apparatus to instruct the operating system to install, and the operating system is the target included in the setup file. Install the program on the information processing device,
A program for installation that features that.
前記インストール処理では、
前記対象プログラムと、前記対象プログラムのインストールに用いるインストール情報と、を含む前記セットアップファイルを取得し、前記オペレーティングシステムは、前記セットアップファイルに含まれる前記インストール情報を用いて、前記セットアップファイルに含まれる前記対象プログラムを前記情報処理装置にインストールする、
ことを特徴とするインストール用のプログラム。 In the installation program according to claim 5.
In the installation process,
The setup file including the target program and the installation information used for installing the target program is acquired, and the operating system uses the installation information included in the setup file to be included in the setup file. Install the target program on the information processing device,
A program for installation that features that.
前記回避処理では、
前記セットアップファイルを前記オペレーティングシステムに渡さないことで、前記第1更新手順を回避する、
ことを特徴とするインストール用のプログラム。 In the installation program according to claim 5 or 6.
In the avoidance process,
By not passing the setup file to the operating system, the first update procedure is bypassed.
A program for installation that features that.
前記回避処理では、
インストール済みの前記バージョン違いプログラムをアンインストールする旨を示す通知を出力し、前記対象プログラムを前記情報処理装置にインストールしないことで、前記第1更新手順を回避する、
ことを特徴とするインストール用のプログラム。 In the installation program according to any one of claims 1 to 7.
In the avoidance process,
By outputting a notification indicating that the installed program having a different version is to be uninstalled and not installing the target program in the information processing apparatus, the first update procedure is avoided.
A program for installation that features that.
前記回避処理では、
インストール済みの前記バージョン違いプログラムが用いる第1形式のパラメータであって前記情報処理装置の第1記憶領域に記憶されている前記パラメータを、前記情報処理装置の前記第1記憶領域と異なる第2記憶領域に記憶する記憶処理と、
前記記憶処理の後、インストール済みの前記バージョン違いプログラムを前記情報処理装置からアンインストールするアンインストール処理と、
前記アンインストール処理の後、前記対象プログラムをインストールする再インストール処理と、
前記再インストール処理の後、前記第2記憶領域に記憶した前記第1形式のパラメータを読み出し、読み出した前記第1形式のパラメータを、前記第1形式と異なる第2形式であって前記対象プログラムが用いる前記第2形式に変換し、変換後の前記第2形式のパラメータを前記第2記憶領域と異なる第3記憶領域であって前記対象プログラムが用いる前記第3記憶領域に書き込む復元処理と、を前記コンピュータに実行させることで、前記第1更新手順を回避する、
ことを特徴とするインストール用のプログラム。 In the installation program according to any one of claims 1 to 6.
In the avoidance process,
The parameter of the first format used by the installed different version program and stored in the first storage area of the information processing apparatus is stored in a second storage area different from the first storage area of the information processing apparatus. Memory processing to store in the area and
After the storage process, an uninstall process for uninstalling the installed different version program from the information processing device, and
After the uninstall process, the reinstallation process to install the target program and
After the reinstallation process, the parameters of the first format stored in the second storage area are read, and the read parameters of the first format are in a second format different from the first format, and the target program A restoration process of converting to the second format to be used and writing the converted parameters of the second format to the third storage area used by the target program in a third storage area different from the second storage area. By letting the computer execute, the first update procedure is avoided.
A program for installation that features that.
前記アンインストール処理では、
前記情報処理装置のオペレーティングシステムに、インストール済みの前記バージョン違いプログラムのアンインストールを指示することで、インストール済みの前記バージョン違いプログラムを前記情報処理装置からアンインストールし、
前記回避処理では、
前記オペレーティングシステムからインストール済みの前記バージョン違いプログラムのアンインストールに成功したことを示す情報を取得した場合に、前記再インストール処理を前記コンピュータに実行させる、
ことを特徴とするインストール用のプログラム。 In the installation program according to claim 9.
In the uninstall process,
By instructing the operating system of the information processing device to uninstall the installed version difference program, the installed version difference program is uninstalled from the information processing device.
In the avoidance process,
When the information indicating that the installation of the version difference program installed is successfully uninstalled is obtained from the operating system, the computer is made to execute the reinstallation process.
A program for installation that features that.
前記コンピュータに、
前記バージョン違いプログラムがインストール済みであると前記インストール判断処理にて判断した場合、前記回避処理を実行する前に、前記対象プログラムが用いるパラメータとインストール済みの前記バージョン違いプログラムが用いるパラメータとに互換性があるか否かを判断する互換性判断処理を実行させ、
さらに前記コンピュータに、
前記互換性判断処理にて互換性が無いと判断した場合、前記回避処理を実行させ、
前記互換性判断処理にて互換性が有ると判断した場合、前記回避処理を実行させず、前記第1更新手順によって前記対象プログラムをインストールするアップデート処理を実行させる、
ことを特徴とするインストール用のプログラム。 In the installation program according to any one of claims 1 to 10.
On the computer
When it is determined by the installation determination process that the version difference program has been installed, the parameters used by the target program and the parameters used by the installed version difference program are compatible with each other before the avoidance process is executed. Execute the compatibility judgment process to judge whether or not there is
Furthermore, to the computer
If it is determined that there is no compatibility in the compatibility determination process, the avoidance process is executed.
When it is determined that there is compatibility in the compatibility determination process, the avoidance process is not executed, and the update process for installing the target program is executed by the first update procedure.
A program for installation that features that.
前記コンピュータに、
前記同バージョンプログラムがインストール済みであると前記インストール判断処理にて判断した場合に、
前記対象プログラムのインストールをしないことを示す通知を、前記情報処理装置の出力インタフェースに出力させる通知処理を実行させ、前記インストール処理および前記回避処理を実行させない、
ことを特徴とするインストール用のプログラム。 In the installation program according to any one of claims 1 to 11.
On the computer
When it is determined by the installation determination process that the same version program has already been installed,
A notification process for outputting a notification indicating that the target program is not installed to the output interface of the information processing device is executed, and the installation process and the avoidance process are not executed.
A program for installation that features that.
前記コンピュータに、
前記バージョン違いプログラムがインストール済みであると前記インストール判断処理にて判断した場合に、第2更新手順で前記対象プログラムをインストールするか否かの選択を、前記情報処理装置の入力インタフェースを介して受け付けるインストール選択処理を実行させ、前記第2更新手順は、インストール済みの前記バージョン違いプログラムをアンインストールした後に前記対象プログラムをインストールする手順であり、
さらに前記コンピュータに、
前記第2更新手順で前記対象プログラムをインストールすることが前記インストール選択処理にて選択された場合に、
前記回避処理を実行させず、前記第2更新手順で前記対象プログラムをインストールするクリーンインストール処理を実行させ、
前記第2更新手順で前記対象プログラムをインストールすることが前記インストール選択処理にて選択されなかった場合に、
前記回避処理を実行させる、
ことを特徴とするインストール用のプログラム。 In the installation program according to any one of claims 1 to 12.
On the computer
When it is determined by the installation determination process that the version difference program has been installed, the selection of whether or not to install the target program in the second update procedure is accepted via the input interface of the information processing apparatus. The installation selection process is executed, and the second update procedure is a procedure for installing the target program after uninstalling the installed different version program.
Furthermore, to the computer
When installing the target program in the second update procedure is selected in the installation selection process,
Instead of executing the avoidance process, the clean installation process for installing the target program is executed in the second update procedure.
When installing the target program in the second update procedure is not selected in the installation selection process,
To execute the avoidance process,
A program for installation that features that.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020069066A JP7484356B2 (en) | 2020-04-07 | 2020-04-07 | program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020069066A JP7484356B2 (en) | 2020-04-07 | 2020-04-07 | program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021165939A true JP2021165939A (en) | 2021-10-14 |
JP7484356B2 JP7484356B2 (en) | 2024-05-16 |
Family
ID=78021831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020069066A Active JP7484356B2 (en) | 2020-04-07 | 2020-04-07 | program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7484356B2 (en) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003216378A (en) | 2001-11-15 | 2003-07-31 | Canon Inc | Information processor, information processing method, computer program and computer readable storage medium |
JP2005301608A (en) | 2004-04-09 | 2005-10-27 | Fuji Xerox Co Ltd | Installation program, installation device, and installation method of peripheral equipment driver |
JP5460215B2 (en) | 2009-09-29 | 2014-04-02 | キヤノン株式会社 | Information processing apparatus and method |
JP2017021647A (en) | 2015-07-13 | 2017-01-26 | 株式会社リコー | Program, information processing device, installation system, and installation method |
JP6606443B2 (en) | 2016-03-02 | 2019-11-13 | キヤノン株式会社 | Information processing apparatus, information processing method, and program |
JP7043783B2 (en) | 2017-10-20 | 2022-03-30 | 富士フイルムビジネスイノベーション株式会社 | Software management equipment, software management systems and programs |
-
2020
- 2020-04-07 JP JP2020069066A patent/JP7484356B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP7484356B2 (en) | 2024-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10630857B2 (en) | Electronic apparatus and method to update firmware of the electronic apparatus when adding a web application to the electronic apparatus | |
JP6874405B2 (en) | Information processing equipment, programs, systems | |
EP2639735A1 (en) | Information processor and recording medium | |
WO2020158715A1 (en) | Support program, information processing device, and printing method | |
JP4961288B2 (en) | Information processing apparatus, information processing program, recording medium, printing apparatus, and network system | |
JP4981936B2 (en) | Installation method of installer and printer driver | |
KR20090031111A (en) | Method for managing driver program of image forming device, and, device thereof | |
JP6041588B2 (en) | Image forming device, program update method and program | |
JP5245661B2 (en) | Print control apparatus, program, recording medium, and print control method | |
US20150317103A1 (en) | Printing apparatus that updates software installed therein, method of controlling the same, and storage medium | |
JP2021165939A (en) | program | |
JP2016173771A (en) | Program, information processing apparatus, information processing method, and storage medium | |
JP4792744B2 (en) | Image processing device | |
JP7484386B2 (en) | PROGRAM AND INFORMATION PROCESSING APPARATUS | |
JP2006215805A (en) | Print information processing device, print information processing program, and recording medium | |
JP2021117896A (en) | Information processing device, information processing method and program | |
JP2016177351A (en) | Program, information processing device, and image display method | |
JP6987541B2 (en) | Image forming apparatus and control method of image forming apparatus | |
JP2010102542A (en) | Driver distribution system, print controller, driver distribution method, and driver updating program | |
US11909935B2 (en) | Image forming apparatus, and control method for controlling image forming apparatus for remotely performing a setting process on or configuration control of a image forming apparatus | |
JP2015177254A (en) | Image formation apparatus and control method thereof | |
JP5966523B2 (en) | Information processing apparatus, program, and recording medium | |
JP2020087256A (en) | Printing system, printer, and support program | |
JP7071189B2 (en) | Information processing equipment, control methods and programs for information processing equipment | |
US11132152B2 (en) | Firmware update system, electronic apparatus, and non-transitory computer-readable recording medium having stored thereon firmware update program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230328 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231220 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240130 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240314 |
|
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: 20240402 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240415 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7484356 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |