JP2010113476A - Information processing apparatus, installation method, program, and storage medium - Google Patents
Information processing apparatus, installation method, program, and storage medium Download PDFInfo
- Publication number
- JP2010113476A JP2010113476A JP2008284687A JP2008284687A JP2010113476A JP 2010113476 A JP2010113476 A JP 2010113476A JP 2008284687 A JP2008284687 A JP 2008284687A JP 2008284687 A JP2008284687 A JP 2008284687A JP 2010113476 A JP2010113476 A JP 2010113476A
- Authority
- JP
- Japan
- Prior art keywords
- package
- sales
- function
- program
- information
- 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
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は、プログラムを情報処理装置にインストールする情報処理装置等に関し、特に、1つのパッケージに含まれる1以上のプログラムコンポーネントを、パッケージ単位でインストールする情報処理装置、インストール方法、プログラム及び記憶媒体に関する。 The present invention relates to an information processing apparatus that installs a program in an information processing apparatus, and more particularly to an information processing apparatus, an installation method, a program, and a storage medium that install one or more program components included in one package in units of packages. .
プログラムを実行して種々の機能を実現する情報処理装置では、インストールするプログラムの増減に応じて機能を増減させることができ、ユーザは情報処理装置を購入した後でも、必要な機能を提供するプログラムを購入してインストールすることで、その機能を利用できるようになる。 In an information processing apparatus that executes a program to realize various functions, the function can be increased or decreased according to the increase or decrease in the number of programs to be installed, and the user can provide the necessary functions even after purchasing the information processing apparatus. By purchasing and installing, you can use its features.
プログラムの不正利用を防止する観点から、インストールされているプログラムを使用する権限を与えるライセンス情報を利用する技術が考えられている(例えば、特許文献1参照。)。特許文献1には、着脱可能な記録媒体に記憶しておき、記録媒体を情報処理装置に装着した場合に使用を認める情報処理装置において、さらに記録媒体の認証情報を情報処理装置に記憶しておく技術が開示されている。
From the viewpoint of preventing unauthorized use of a program, a technique of using license information that gives authority to use an installed program has been considered (for example, see Patent Document 1). In
ところで、このようなプログラムでは複数のモジュールが協調して1以上の機能を実現する構成を採用して、コンピュータや組み込み機器に実装する場合がある。例えば、Aという機能は、モジュールa1,a2、a3が協調することで実現されるような場合、Aという機能のためモジュールa1〜a3をインストールする。また、他の機能Bを実現したければ、機能Bに必要な1以上のモジュールb1等をインストールすればよく、ユーザは必要な場合に必要な機能を使用することができる。 By the way, such a program may adopt a configuration in which a plurality of modules cooperate to realize one or more functions, and may be mounted on a computer or an embedded device. For example, when the function A is realized by cooperation of the modules a1, a2, and a3, the modules a1 to a3 are installed for the function A. If another function B is to be realized, one or more modules b1 necessary for the function B may be installed, and the user can use the necessary function when necessary.
しかしながら、機能とモジュールの間に複雑な関係が生じることも少なくなく、必要な機能を実現するためにインストールすべきモジュールをユーザが把握することは困難である。この点について、サーバがプログラムモジュール間の依存関係を考慮して、組み込みソフトウェアの更新に必要なモジュール群をクライアントである電子機器に送信するプログラムの実装方法が開示されている(例えば、特許文献2参照。)。
しかしながら、特許文献2記載の電子機器はサーバと通信できなければ、換言するとスタンドアローンの状態では新たな機能をインストールできないという問題がある。というのは、通信できない環境でも新たな機能を利用できるようにしておくには、予め、必要となると考えられるモジュール群を電子機器に記憶しておく必要があるが、予め記憶しておくとユーザが自由に使用できたり不正利用したりするおそれがある。このため、予め、モジュール群を電子機器に記憶しておく方法を採用するには、インストールしておいても、権限のないユーザが使用できず権限のあるユーザであれば使用可能となる仕組みが必要となる。
However, if the electronic device described in
本発明は、上記課題に鑑み、ネットワークに接続できない環境でも、モジュールと機能の依存関係に応じて適正にモジュールの使用を管理できる情報処理装置、インストール方法、プログラム及び記憶媒体を提供することを目的とする。 An object of the present invention is to provide an information processing apparatus, an installation method, a program, and a storage medium that can appropriately manage the use of a module according to the dependency relationship between the module and the function even in an environment that cannot be connected to a network. And
上記課題に鑑み、本発明は、1つのパッケージに含まれる1以上のプログラムコンポーネントを、パッケージ単位で記憶装置にインストールする情報処理装置であって、記憶装置に既にインストールされているパッケージに含まれるプログラムコンポーネントのリストを記憶したパッケージ情報記憶手段と、インストールされているプログラムコンポーネント毎にインストール数を記憶したプログラム情報記憶手段と、インストール対象のパッケージに添付された設定ファイルを記憶する記憶媒体から、前記設定ファイルに登録されたプログラムコンポーネントのリストを読み出し、前記パッケージ情報記憶手段に記憶されたリストと突合し、既にインストールされているプログラムコンポーネントを検出する重複プログラム検出手段と、既にインストールされていないプログラムコンポーネントのみをインストールするインストール手段と、インストールしたプログラムコンポーネントをインストール数と共に前記プログラム情報記憶手段に登録し、重複していることが検出されたプログラムコンポーネントのインストール数を1つ増加させるプログラム情報更新手段と、を有することを特徴とする。 In view of the above problems, the present invention is an information processing apparatus that installs one or more program components included in one package into a storage device in units of packages, and is a program included in a package that is already installed in the storage device Package information storage means for storing a list of components, program information storage means for storing the number of installations for each installed program component, and a storage medium for storing a setting file attached to a package to be installed, the setting A duplicate program detection means for reading a list of program components registered in the file, matching the list stored in the package information storage means, and detecting program components already installed; An installation unit that installs only program components that are not installed, and the installed program component are registered in the program information storage unit together with the number of installations, and the installation number of program components that are detected to be duplicated is increased by one. And a program information updating unit.
ネットワークに接続できない環境でも、モジュールと機能の依存関係に応じて適正にモジュールの使用を管理できる情報処理装置、インストール方法、プログラム及び記憶媒体を提供することができる。 It is possible to provide an information processing apparatus, an installation method, a program, and a storage medium that can appropriately manage the use of a module according to the dependency relationship between the module and the function even in an environment that cannot be connected to the network.
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。
まず、本願の画像形成装置100におけるプログラムの実装態様(インストール態様)について説明する。本実施形態では、情報処理装置を備えた画像形成装置100を例にして説明するが、情報処理装置を備えた電子機器、及び、パソコンのような情報処理装置そのものに好適に適用できる。
The best mode for carrying out the present invention will be described below with reference to the drawings.
First, a program implementation mode (installation mode) in the
図1は、本実施形態の画像形成装置100におけるインストールの概要を模式的に説明する図の一例である。まず、言葉の定義について説明する。本実施形態では、プログラムの実装にインストール、アクティベーション、有効化という概念を用いる。インストールとは、プログラムコンポーネントを画像形成装置100の記憶装置(後述のHDD15)に記憶することをいう。また、アクティベーションとは、その画像形成装置100でそのプログラムを使用する権限を与えることをいい、原則的にアクティベーションによりインストールされたプログラムコンポーネントが有効化される(起動可能にする)。有効化とは、起動すること又はユーザの起動操作があればいつでもプログラムコンポーネントを起動可能とすることをいう。
FIG. 1 is an example of a diagram for schematically explaining an outline of installation in the
なお、販売パッケージは、インストールした後にアクティベーションする必要がある場合と、インストールすることで自動的にアクティベーションされる場合がある。アクティベーションが必要か否かは販売パッケージの属性により定まる(infファイルに規定されている)。インストールした後にアクティベーションが必要な販売パッケージでは、アクティベーションしなければ有効化されずプログラムコンポーネントを起動できない。この場合、アクティベーションすることで同時に有効化もされる。 A sales package may be activated after being installed, or may be automatically activated upon installation. Whether or not activation is necessary is determined by the attribute of the sales package (specified in the inf file). Sales packages that require activation after installation cannot be activated and program components cannot be launched without activation. In this case, it is also activated simultaneously by activation.
以上から、アクティベーションと有効化には次の関係がある。
・インストール時に自動的にアクティベーションされる販売パッケージ
インストールにより、アクティベーションかつ有効化
・インストール後にアクティベーションが必要な販売パッケージ
インストール後、アクティベーションすることで同時に有効化
・アクティベーションと有効化が別のプロセスの販売パッケージ
有効化により有効、無効化により無効
図1に基づき説明する。販売パッケージAには2つの機能パッケージ1,2が含まれている。販売パッケージとは販売単位であり、1以上の機能パッケージが含まれている。機能パッケージは、インストールの最小単位でありプログラムコンポーネントと1対1に対応する(以下、原則的にプログラムコンポーネントを機能パッケージと称する)。
From the above, there is the following relationship between activation and activation.
・ Activation and activation by sales package installation that is automatically activated at the time of installation ・ Activation after activation after installation of sales package that requires activation after installation ・ Activation and activation are different Process sales package Validated by validation, invalidated by invalidation Referring to FIG. The sales package A includes two
本実施形態のプログラムの実装を実現するため、画像形成装置100は販売パッケージ情報74と機能パッケージ情報75を記憶している。図示するように、販売パッケージAをインストールするまでは、販売パッケージ情報74と機能パッケージ情報75には何の情報も登録されていないか、販売パッケージ情報74及び機能パッケージ情報75そのものが記憶されていない。すなわち、販売パッケージ情報74は、その画像形成装置100に販売された販売パッケージを登録するファイルで、機能パッケージ情報75は、販売された販売パッケージに含まれる機能パッケージを登録するファイルである。したがって、販売パッケージ情報74及び機能パッケージ情報75を参照することで、既に販売されている販売パッケージと機能パッケージを検出できる。
In order to realize the implementation of the program of the present embodiment, the
なお、販売パッケージの「名前」はユーザの管理しやすい名称、「ID」は固有の識別情報、「アクティベーション」は「○」「×」のいずれか状態を取り、「有効」は「○」「×」のいずれか状態を取り、「機能IDリスト」はその販売パッケージが含む機能パッケージのIDが登録される。同様に、機能パッケージ情報75の「名前」はユーザの管理しやすい名称、「ID」は固有の識別情報、「販売数」は販売された数、「有効販売数」は販売数のうち有効な機能パッケージの数、「有効」は「○」「×」のいずれかの状態を取る。
Note that the “name” of the sales package is a name that can be easily managed by the user, “ID” is unique identification information, “activation” is either “○” or “×”, and “valid” is “○” One of the states “X” is taken, and the ID of the function package included in the sales package is registered in the “function ID list”. Similarly, “name” of the
販売パッケージ情報74と機能パッケージ情報75に何も情報が登録されていない状況で、販売パッケージAがインストールされるものとする。後述するプラグイン管理部71は、販売パッケージ情報74を参照して(記憶されていないことを確認して)、販売パッケージAに含まれる機能パッケージ1,2をインストールする。
Assume that the sales package A is installed in a situation where no information is registered in the
なお、販売パッケージAに含まれる機能パッケージが何であるか(図1では機能パッケージ1,2)は、その販売パッケージに含まれるプログラムコンポーネントであるので明らかであるが、各販売パッケージにはinfファイルが添付されているので、infファイルを参照して含まれる各機能パッケージを特定できる。なお、infファイルには、販売パッケージの名前、ID、機能IDリスト、販売パッケージのバージョン、販売パッケージが含む各機能パッケージのバージョン、さらにアクティベーションが必要か否か、等が登録されている。
Note that what is the functional package included in the sales package A (
インストール後の販売パッケージ情報74には、販売パッケージAの情報として、名前「dist1」、ID「1111」、アクティベーション「○」、有効「○」、機能IDリスト「2111,2222」が登録される。
In the post-installation
アクティベーションするか否かは販売パッケージの属性として定められており、例えば販売時に定まるものである。図1はアクティベーションする販売パッケージを示すものであるため、アクティベーションの欄が「○」になっている。また、有効の欄はアクティベーションされると(有効になると)「○」になる。 Whether or not to activate is determined as an attribute of the sales package, and is determined at the time of sales, for example. Since FIG. 1 shows the sales package to be activated, the activation column is “◯”. Also, the valid column becomes “◯” when activated (when activated).
機能パッケージ情報75には、販売パッケージAのインストールに伴いインストールされる機能パッケージの情報が登録される。したがって、名前「func1」「func2」、ID「2111」「2222」、販売数「1」「1」、有効販売数「1」「1」、有効「○」「○」が、それぞれ登録されている。販売数は各機能パッケージの販売数を、有効販売数はそのうち有効化されている機能パッケージの数を示す。これは同じ機能パッケージが複数販売されることがあるためである。販売パッケージAには、1つの機能パッケージ1,1つの機能パッケージ2が含まれているので販売数は1つずつ増え、それぞれアクティベーションされるので有効販売数も1つずつ増える。また、有効の欄は、有効販売数が1つでもあれば「○」になる。
In the
次に、インストールされてもアクティベーションされない販売パッケージのインストールについて図2に基づき説明する。なお、インストール対象は図1と同じである。販売パッケージAのインストールに対応して、機能パッケージ1、2がインストールされるが、販売パッケージAはアクティベーションされない。このため、インストール後の販売パッケージ情報74のアクティベーションの欄は「×」であり、この結果、有効の欄も「×」である。
Next, installation of a sales package that is installed but not activated will be described with reference to FIG. The installation target is the same as in FIG. Corresponding to the installation of the sales package A, the
同様に、機能パッケージ情報75では、機能パッケージ1,2がそれぞれ販売されたため販売数は「1」「1」となるが、アクティベーションされないので、有効の欄はそれぞれ「×」「×」となる。
Similarly, in the
以上のように、販売パッケージ単位で複数の機能パッケージをインストールする際、機能パッケージの重複、バージョン、アクティベーションの要・不要等に応じて、プログラムの実装形態が異なる。本実施例の画像形成装置100は、このような状況に応じて適切にプログラムを実装する。
As described above, when a plurality of function packages are installed on a sales package basis, the program implementation form differs depending on the duplication of function packages, version, necessity / unnecessity of activation, and the like. The
インストール単位を販売パッケージの単位とすることにより、機能単位でインストールするユーザは、開発単位であるプログラムコンポーネントの単位を意識する必要がない。また販売パッケージの単位をユーザにとって価値のある単位とすることにより、ユーザにとって使いやすい情報処理装置とすることができる。 By setting the installation unit as the unit of the sales package, the user who installs in the function unit does not need to be aware of the unit of the program component which is the development unit. Further, by setting the unit of the sales package as a unit valuable to the user, an information processing apparatus that is easy to use for the user can be obtained.
〔画像形成装置100〕
画像形成装置100について簡単に説明する。図3は、画像形成装置100のハードウェア構成図の一例を示す。画像形成装置100は、コントローラ50と、プロッタ27、スキャナ28、ファックス制御ユニット26、及びその他ハードウェアリソース29とがPCIバス、PCI−Xバス又はPCI−Express等のシリアルインターバスで接続された構成となる。また、コントローラ50には操作部24が接続されている。なお、インストール管理プログラム20を記憶する記憶媒体(メモリーカード30)を示した。
[Image forming apparatus 100]
The
コントローラ50は、画像形成装置100全体の制御、すなわち、ファックス制御ユニット26、プロッタ27,スキャナ28及びその他ハードウェアリソース29を用いて、原稿の読み取り、印刷、ファクシミリ送受信、操作部24からの入力等を処理する制御部である。
The
プロッタ27は、白黒プロッタ及び/又は1ドラムカラープロッタであり、印刷ジョブデータやスキャナ28が読み取った画像データに基づき、1ページ毎の画像を形成し、用紙に転写する。例えば、レーザービームを用いた電子写真プロセスを使って、感光ドラム等に形成したトナー画像を用紙に転写し、定着装置により熱と圧力により定着して出力する。
The
また、スキャナ28は、コンタクトガラスに載置された原稿を光学的に走査して、その反射光をA/D変換して誤差拡散やガンマ変換などの画像処理を施し所定の解像度のデジタルデータに変換し画像データを生成する。
The
ファックス制御ユニット26は、NCU(Network Control Unit)を介して公衆通信網に接続し、例えばG3、G4規格のファクシミリに対応した通信手順(通信プロトコル)等に従いファクシミリの送受信を行う。ファックス制御ユニット26は、画像データにデータ圧縮や変調等の信号処理を施して送信すると共に、相手先から受信した画像データにデータの伸長やエラー訂正等を施し画像データを復元する。
The
コントローラ50は、CPU11と、ノースブリッジ (以下、NB13という)と、システムメモリ(以下、MEM−P12という)と、サウスブリッジ (以下、SBという)と、ローカルメモリ(以下、MEM−C14という)と、ASIC(Application Specific Integrated Circuit)16と、ハードディスクドライブ(以下、HDD15という)と、ワイヤレスUSBホスト17と、NIC(Network Interface Card)18と、無線LANI/F19と、USBホスト22と、メモリカードI/F23と、を有する。なお、ASIC16とNB13の間はAGP(Accelerated GraphicsPort)で接続されている。
The
CPU11は、MEM−P12、ASIC16、及び、ワイヤレスUSBホスト17等を結ぶバスに流通するデータの送信制御を行うNB13を介して、画像形成装置100の全体を制御する。
The
NB13は、CPU11とMEM−P12、AGPとを接続するためのブリッジICであり、MEM−P12は、画像形成装置100の描画用メモリなどとして用いるシステムメモリである。
The
MEM−C14は、コピー用画像バッファ、符号バッファとして用いられるローカルメモリであり、ASIC16は、多数のレジスタや論理回路を備え、各モータドライバの制御部の他、ヘッドパルス生成部等として機能する。また、ASIC16は、AGP、HDD15およびMEM−C14をそれぞれ接続するブリッジの役割も果たす。
The MEM-
操作部24は、ユーザからの入力操作の受け付け並びにユーザに向けた表示をおこなう操作部であり、キーボードの他にタッチパネルを入力手段として有し、LCD(液晶ディスプレイ)等の表示部と兼用されている。
The
HDD15は、画像データの蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積を行うための記憶手段であるが、フラッシュメモリ、MRAM(Magnetoresistive Random Access Memory)など不揮発メモリなどでもよい。本実施形態ではHDD15に、アクティベーションを管理するインストール管理プログラム20、販売パッケージ情報74,機能パッケージ情報75、起動情報77、プラグインコンポーネント73が記憶されている。
The
AGPは、グラフィック処理を高速化するために提案されたグラフィックスアクセラレーターカード用のバスインターフェースであり、システムメモリに高スループットで直接アクセスすることにより、グラフィックスアクセラレーターカードの処理を高速化する。 AGP is a bus interface for graphics accelerator cards that has been proposed to speed up graphics processing, and speeds up processing of graphics accelerator cards by directly accessing system memory with high throughput.
NIC18は、例えばイーサネット(登録商標)カードであり、OSI基本参照モデルの物理層、データリンク層に規定されたプロトコルに従う処理を実行する。これに後述のメールアプリがSMTPやPOP3等の上位のプロトコルを実行して電子メールを送受信したり、WebアプリがFTP、HTTPなどのプロトコルを実行してライセンスファイルをライセンスサーバ200や画像形成装置100の間で送受信する。
The
無線LANI/F19は、例えばIEEE 802.11a/b/g等の通信規格に準拠し、アクセスポイントに介してLAN等のネットワークに接続する。
The wireless LAN I /
IEEE1394I/F21は、IEEE1394の通信規格を備えた機器と通信するインターフェイスであり、複数台の機器をデイジーチェーン接続することができる。動画などのサイズの大きなデータを送信するのに適しており、接続される機器は、例えばデジタルカメラやビデオカメラ等である。
The IEEE 1394 I /
USBホスト22はUSBコントローラと呼ばれるICで、これをCPU11が実行するデバイスドライバ(ドライバソフトウェア)が制御してUSBI/Fを構成し、接続された例えばUSBメモリ31と通信する。同様に、メモリカードI/F23は、メモリカード30からデータを読み出しまた記録媒体にデータを書き込むインターフェイスである。メモリカード30は、例えばSDカード、マルチメディアカード、xDカード等である
〔ソフトウェアモジュール〕
図4は、画像形成装置100のソフトウェアモジュールの一例を示す図である。ソフトウェアモジュールは、上記のプロッタ27、スキャナ28、その他ハードウェアリソース29とHW(Hard Ware) I/Fを介して接続された構成となり、主に、プラットホーム80とアプリケーション70とから構成される。
The
FIG. 4 is a diagram illustrating an example of a software module of the
プラットホーム80は、アプリケーション70からの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービス55と、1以上のハードウェア資源の管理を行い、コントロールサービス55からの獲得要求を調停するシステムリソースマネージャ(SRM63)と、OS(Operating System)64と、インストール管理部60と、を有する。
The
コントロールサービス55は、複数のサービスモジュールから形成され、SCS(システムコントロールサービス)62と、ECS(エンジンコントロールサービス)56と、MCS(メモリコントロールサービス)57と、OCS(オペレーションパネルコントロールサービス)58と、FCS(ファックスコントロールサービス)59と、NCS(ネットワークコントロールサービス)61とから構成される。なお、プラットホーム80は、あらかじめ定義されたプログラムによりアプリケーション70から処理要求を受け取るAPI(プリケーションプログラムインタフェース)を有する。
The
OS64は、LINUX(登録商標)やUNIX(登録商標)などの汎用オペレーティングシステムであり、プラットホーム80及びアプリケーション70の各ソフトウェアをそれぞれプロセスとして並列に実行することができる。OS64は、NIC18、無線LANI/F19、IEEE1394I/F21、USBホスト22、及び、メモリカードI/F23と通信する各種のデバイスドライバを有する。
The
SRM63は、SCS62とともにシステムの制御およびリソースの管理を行う。SRM63のプロセスは、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、ハードウェアリソースによる動作を制御する。
The
SCS62は、アプリ管理、操作部24の制御、システム画面表示、LED表示、リソース管理、割り込みアプリ制御等を行う。ECS56は、ハードウェアリソースのエンジンの制御を行う。
The
MCS57は、画像メモリの取得および解放、HDD15の利用、画像データの圧縮および伸張などを行う。FCS59は、システムコントローラの各アプリ層からPSTN/ISDN網を利用したファクシミリ送受信、バックアップSRAMに記憶されている各種ファクシミリデータの登録/引用、ファクシミリ読みとり、ファクシミリ受信印刷、融合送受信を行うためのAPIを提供する。
The
NCS61は、ネットワークI/Oを必要とするアプリケーション70に対して共通に利用できるサービスを提供するためのプロセスであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーション70に振り分けたり、アプリケーション70からデータをネットワーク側に送信する際の仲介を行う。具体的には、FTP等のプロトコルの各種デーモンや、同プロトコルのクライアント機能などを有している。
The
OCS58は、ユーザAと本体制御間の情報伝達手段となる操作部(オペレーションパネル)24の制御を行う。OCS58は、操作部24からキー押下をキーイベントとして取得し、取得したキーに対応したキーイベント関数をSCS62に送信する部分と、アプリケーション70またはコントロールサービス55からの要求により表示部25に各種画面を描画出力する描画関数やその他操作部に対する制御を行う関数などがあらかじめ登録されたOCS関数ライブラリの部分とから構成される。
The
アプリケーション70は、電子メールを送受信するメールアプリ49、プリンタ用のプリンタアプリ51と、コピー用のコピーアプリ52と、ファクシミリ用のファックスアプリ53と、スキャナ28用のスキャナアプリ54と、を有している。
The
コントロールサービス55には、インストール管理部60が設けられる。インストール管理部60は、コントロールサービス55でプロセスとして動作し、機能パッケージを構成する各種のプラグインコンポーネント73、アクティベーション、ディアクティベーション、有効化/無効化等の種々の処理を実行する。
The
〔インストール管理部60〕
図5は、インストール管理部60の機能ブロック図の一例を示す。インストール管理部60は、CPU11がインストール管理プログラム20を実行するか所定の演算回路により実現される、プラグイン管理部71及びプラグインスタータ72を有する。
[Installation Management Unit 60]
FIG. 5 shows an example of a functional block diagram of the
プラグイン管理部71は、各種プラグインコンポーネント73のインストール/アンインストール、アクティベーション/ディアクティベーション、有効化/無効化などの処理を実行する。プラグインスタータ72は、起動情報77を参照し、画像形成装置100のシステムの起動時に、各プラグインコンポーネント73の起動処理を実行する。すなわち、プラグインスタータ72は、起動情報77に登録されているプラグインコンポーネント73を起動する。
The plug-in
プラグインコンポーネント73、販売パッケージ情報74及び機能パッケージ情報75は、例えばHDD15に記憶される。プラグインコンポーネント73は、画像形成装置100にインストールされる各種のプログラムをいい、プラグイン管理部71が管理する機能パッケージと1対1で対応するものである。
The plug-in
〔プラグイン管理部71の機能ブロック図〕
図6は、プラグイン管理部71の機能ブロック図の一例を示す。インストール部81は、例えば、メモリーカード30に記憶された販売パッケージをHDD15にインストールする。具体的には販売パッケージ毎に、販売パッケージが含む機能パッケージ(プラグインコンポーネント73)をインストールする。
[Functional Block Diagram of Plug-in Manager 71]
FIG. 6 shows an example of a functional block diagram of the plug-in
アクティベーション部82は、その販売パッケージの属性又はユーザの指示に応じて、販売パッケージと販売パッケージに含まれる機能パッケージをアクティベーションする。有効化部83は、機能パッケージを有効化する。インストールはアクティベーションを、アクティベーションは有効化を含む場合があるので図示するように上位の機能は下位の機能を備える。 The activation unit 82 activates the sales package and the function package included in the sales package in accordance with the attribute of the sales package or a user instruction. The validation unit 83 validates the function package. Since installation may include activation, and activation may include activation, the upper function includes the lower function as illustrated.
同様に、HDD15から機能パッケージを削除するアンインストール部87、ディアクティベーションするディアクティベーション部88、無効化する無効化部89を備える。詳細は後述する。処理内容決定部91は、アンインストール時に、機能パッケージをアンインストールするか、無効化するか、何もしないかの処理内容を決定する。
Similarly, an
また、販売パッケージ情報更新部93は、販売パッケージ情報74を更新し、機能パッケージ情報更新部92は機能パッケージ情報75を更新する。重複機能検出部84は、infファイルを参照しこれからインストールする販売パッケージに含まれる機能パッケージのうち、既にインストールされている機能パッケージと重複するものを検出する。バージョン判定部85は、重複した機能パッケージについて、どちらのバージョンが新しいかを判定する。削除部86は、アップデートにより販売パッケージに含まれなくなった機能パッケージを削除する。以下、これらの機能ブロックを用いた本実施形態のプログラムの実装を詳細に説明する。
In addition, the sales package
〔プログラムの種々の実装態様〕
以下、インストールされている販売パッケージの有無、インストール時のアクティベーションの有無等に応じた種々のプログラムの種々の実装態様について説明する。
<インストール・アクティベーション不要>
インストール時にアクティベーションされるプログラムの実装態様について図7に基づき説明する。すでに画像形成装置100には販売パッケージBがインストールされている。このため、販売パッケージ情報74には、販売パッケージBの情報が登録されている。図示するように販売パッケージBはアクティベーションされておらず有効の欄は「×」となっている。
[Various implementations of the program]
Hereinafter, various implementation modes of various programs according to the presence / absence of an installed sales package, the presence / absence of activation at the time of installation, and the like will be described.
<No installation or activation>
The implementation mode of the program activated at the time of installation will be described with reference to FIG. The sales package B is already installed in the
販売パッケージBには、2つの機能パッケージ2,3が含まれる。このため、機能パッケージ情報75には機能パッケージ2,3の情報がそれぞれ登録されているが、販売パッケージBがアクティベーションされていないので、機能パッケージ2,3の有効販売数はそれぞれ「0」「0」となっている。
The sales package B includes two
この状態でアクティベーションの不要な販売パッケージAを販売した場合、インストール管理部は、必要な機能パッケージのみをインストールする。重複機能検出部84は、これからインストールする販売パッケージに含まれる機能パッケージのうち、既にインストールされている機能パッケージと重複するものを検出する。販売パッケージAには、機能パッケージ1,2が含まれ、既にインストールされている販売パッケージには機能パッケージ2、3が含まれる。したがって、重複機能検出部84は機能パッケージ2が重複していることを検出する。インストール部81は、検出された機能パッケージ2をインストールしない。
When the sales package A that does not require activation is sold in this state, the installation management unit installs only the necessary function package. The duplicate function detection unit 84 detects a duplicate of a function package already installed among the function packages included in the sales package to be installed. The sales package A includes
したがって、インストール部81は、機能パッケージ1のみをインストールする。また、アクティベーション部82は、infファイルを参照しインストール時にアクティベーションされる販売パッケージであることを検出して、インストールした機能パッケージ1をアクティベーションし、有効化部は機能パッケージ1を有効化する。なお、販売パッケージBは有効化されていないままである。
Therefore, the
販売パッケージ情報更新部93は、販売パッケージ情報74に機能パッケージ1の情報を登録し、登録の際、有効の欄を「○」とする。また、機能パッケージ情報更新部92は、機能パッケージ情報75に新たにインストールされた機能パッケージ1の情報を登録する。機能パッケージ1は、それまで機能パッケージ情報75に登録されていなかったので、新たに名前等が登録される。販売数は「1」で、販売パッケージAはアクティベーションされたので有効販売数は「1」となる。
The sales package
一方、機能パッケージ2はすでに機能パッケージ情報75に登録されているため、販売数が1つ増え「2」となる。これに対し、既にインストールされていた機能パッケージ2はアクティベーションされず、新たにインストールされた機能パッケージ2のみがアクティベーションされたので、有効販売数は「1」のままである。
On the other hand, since the
以上説明したように、既にインストールされている機能パッケージはインストールされず、機能パッケージ情報75の販売数だけが増大する点が、本実施形態の画像形成装置100の特徴の1つである。
As described above, one of the features of the
<インストール・アクティベーション必要>
インストール時にアクティベーションされないプログラムの実装態様について図8に基づき説明する。アクティベーションは、使用権限を認めること、使用権限を認めたことを示すアクティベーション情報を生成すること、等をいう。アクティベーション情報は、例えば、プログラムコンポーネントのシリアル番号と、画像形成装置100又はユーザの識別情報を関連付けた認証情報である。アクティベーション情報により、プログラムコンポーネントだけをコピーしても他の情報処理装置では利用を困難にすることができる。
<Installation / activation required>
An implementation mode of a program that is not activated at the time of installation will be described with reference to FIG. Activation refers to authorizing use authority, generating activation information indicating that use authority has been authorized, and the like. The activation information is, for example, authentication information in which the serial number of the program component is associated with the
図8では、図7と同様にすでに販売パッケージBがインストールされた状態で、販売パッケージAをインストールするが、図8では販売パッケージAはアクティベーションされない。販売パッケージAがインストールされる前の販売パッケージ情報74と機能パッケージ情報75は図7と同じである。
In FIG. 8, the sales package A is installed in a state where the sales package B is already installed as in FIG. 7, but the sales package A is not activated in FIG. The
この状態でアクティベーションが必要な販売パッケージAを販売した場合、重複機能検出部84は、機能パッケージ2が重複していることを検出し、インストール部81は、重複していない機能パッケージ1のみをインストールする。また、アクティベーション部82は、インストール時にアクティベーションしない販売パッケージであることを検出するので、機能パッケージ1をアクティベーションしない。なお、販売パッケージBは有効化されていないままである。
When the sales package A that requires activation is sold in this state, the duplicate function detection unit 84 detects that the
販売パッケージ情報更新部93は、販売パッケージ情報74に機能パッケージ1の情報を登録し、登録の際、有効の欄を「×」とする。また、機能パッケージ情報更新部92は、機能パッケージ情報75に新たにインストールされた機能パッケージ1の情報を登録する。機能パッケージ1は、それまで機能パッケージ情報75に登録されていなかったので、新たに名前等が登録される。販売数は「1」で、販売パッケージAはアクティベーションされないので有効販売数は「0」となる。
The sales package
一方、機能パッケージ2はすでに機能パッケージ情報75に登録されているため、販売数が1つ増え「2」となる。これに対し、既にインストールされていた機能パッケージ2はアクティベーションされず、新たにインストールされた機能パッケージ2もアクティベーションされないので、有効販売数は増えることなく「0」となる。
On the other hand, since the
<インストール・アクティベーション不要(バージョン違い)>
同じ機能パッケージが既にインストールされているが、バージョンが異なる場合のインストールについて図9に基づき説明する。
図9では、すでに画像形成装置100に販売パッケージBがインストールされ、アクティベーションされている。このため、販売パッケージ情報74の販売パッケージBでは、アクティベーションと有効の欄がそれぞれ「○」となっている。
<No installation or activation required (different versions)>
The installation when the same function package is already installed but the version is different will be described with reference to FIG.
In FIG. 9, the sales package B is already installed in the
販売パッケージBには、2つの機能パッケージ2,3が含まれるので、機能パッケージ情報75には機能パッケージ2,3の情報がそれぞれ登録されている。販売パッケージBがアクティベーションされているので、機能パッケージ2,3の有効販売数はそれぞれ「1」「1」となっている。
Since the sales package B includes two
この状態でアクティベーションの不要な販売パッケージAを販売してインストールする。ここで、重複機能検出部84は、機能パッケージ2が重複していることを検出するが、バージョン判定部85は、重複した機能パッケージがある場合、どちらのバージョンが新しいかを判定する。図9では、販売パッケージAの機能パッケージ2のバージョンが「2」で、販売パッケージBの機能パッケージ2のバージョンが「1」であるので、既にインストールされている機能パッケージ2の方がバージョンが古い。このため、インストール部81は、重複していても、販売パッケージAに含まれる機能パッケージ2をインストールする。これにより、機能パッケージ2をバージョンアップすることができる。
In this state, the sales package A that does not require activation is sold and installed. Here, the duplicate function detection unit 84 detects that the
販売パッケージ情報74と機能パッケージ情報75の登録・更新は上記のとおりである。すなわち、販売パッケージ情報更新部93は、販売パッケージ情報74に機能パッケージ1の情報を登録する。販売パッケージAはアクティベーションが不要なので、アクティベーションの欄は「○」、有効の欄は「○」になる。
The registration / update of the
また、機能パッケージ情報更新部92は、機能パッケージ情報75に機能パッケージ1の情報を登録する。機能パッケージ1はアクティベーションが不要なので、有効販売数は「1」、有効の欄は「○」になる。また、機能パッケージ情報75がバージョンの欄を有する場合には機能パッケージのバージョンを登録する。
Further, the function package
また、機能パッケージ2が販売パッケージAに含まれていたので、機能パッケージ情報更新部92は、機能パッケージ2の販売数を1つ増やし「2」にして、有効販売数も1つ増やして「2」にする。なお、同じ機能パッケージの異なるバージョンがインストールされた場合、バージョンアップ後のバージョンが登録される。
Further, since the
<インストール・アクティベーション必要(バージョン違い)>
同様に、異なるバージョンで同じ機能パッケージをインストールする場合において、アクティベーションが必要な場合を図10に基づき説明する。インストール前の販売パッケージ情報74と機能パッケージ情報75は図9と同じである。したがって、インストール部81は、機能パッケージ2がすでにインストールされていても、バージョンが新しい販売パッケージAに含まれる機能パッケージ2をインストールする。
<Installation / activation required (different versions)>
Similarly, a case where activation is necessary when the same function package is installed in different versions will be described with reference to FIG. The
販売パッケージ情報更新部93は、販売パッケージ情報74に機能パッケージ1の情報を登録する。販売パッケージAはアクティベーションが必要なので、アクティベーションの欄は「×」、有効の欄は「×」になる。
The sales package
また、機能パッケージ情報更新部92は、機能パッケージ情報75に機能パッケージ1の情報を登録する。機能パッケージ1はアクティベーションが必要なので、販売数は「1」でも有効販売数は「0」、有効の欄は「×」になる。
Further, the function package
また、機能パッケージ2が販売パッケージAに含まれていたので、機能パッケージ情報更新部92は、機能パッケージ2の販売数を1つ増やし「2」にする。しかし、販売パッケージAはアクティベーションが必要なので、有効販売数は増えず「1」のままである。
Further, since the
<インストール・アクティベーション不要(バージョン違い2)>
同じ機能パッケージが既にインストールされており両者のバージョンが異なるが、後からインストールする機能パッケージのバージョンの方が古い場合について図11に基づき説明する。なお、図11において図9と同一部の説明は省略する。
<No installation or activation required (version 2)>
The case where the same function package has already been installed and the versions of both are different, but the version of the function package to be installed later will be described with reference to FIG. In FIG. 11, the description of the same parts as those in FIG. 9 is omitted.
図11では、これからインストールする販売パッケージAに含まれる機能パッケージ2のバージョンが「1」で、販売パッケージBに含まれる機能パッケージ2のバージョンが「2」であるので、既にインストールされている機能パッケージ2の方がバージョンが新しい。このような場合、販売パッケージAに含まれる機能パッケージ2をインストールする必要はない。
In FIG. 11, since the version of the
なお、インストールによる販売パッケージ情報74と機能パッケージ情報75の変化は図9と同じである。
The changes in the
<インストール・アクティベーション必要(バージョン違い2)>
図11と同様の状況で、販売パッケージAのアクティベーションが必要な場合を図12に基づき説明する。なお、図12において図10と同一部の説明は省略する。図12では、これからインストールする販売パッケージAに含まれる機能パッケージ2のバージョンが「1」で、販売パッケージBに含まれる機能パッケージ2のバージョンが「2」であるので、既にインストールされている機能パッケージ2の方がバージョンが新しい。このような場合、販売パッケージAに含まれる機能パッケージ2をインストールする必要はない。
<Installation / activation required (different versions 2)>
A case where activation of the sales package A is necessary in the same situation as in FIG. 11 will be described with reference to FIG. In FIG. 12, the description of the same parts as those in FIG. 10 is omitted. In FIG. 12, since the version of the
なお、インストールによる販売パッケージ情報74と機能パッケージ情報75の変化は図10と同じである。
The changes in the
<アップデート>
同じ販売パッケージのアップデートについて説明する。図13は、販売パッケージAのアップデートを説明する図の一例である。販売パッケージのアップデートでも機能パッケージ毎にインストールされるのはこれまでと同じである。アップデートという実装態様は、ユーザが意識的か無意識かに関わらず同じ販売パッケージをインストールする際に生じる状況であり、インストールの一形態である。
<Update>
Describe the update of the same sales package. FIG. 13 is an example of a diagram illustrating the update of the sales package A. Even when a sales package is updated, each function package is installed as before. The update implementation is a situation that occurs when the same sales package is installed regardless of whether the user is conscious or unconscious, and is a form of installation.
画像形成装置100にすでにバージョン「1」の販売パッケージAがインストールされている状態で、ユーザは新しいバージョン「2」の販売パッケージAをインストール(アップデート)する。販売パッケージAには、機能パッケージ1,2が含まれているが、機能パッケージ2のバージョンはいずれも「2」であり変化がない。このような場合は、バージョンが新しくなった機能パッケージのみをインストールすればよい。
The user installs (updates) the new version “2” of the sales package A in a state where the sales package A of the version “1” is already installed in the
したがって、バージョン判定部85は、機能パッケージ毎にバージョンを比較して、バージョンが新しい機能パッケージのみをインストールするよう、インストール部81に要求する。以上から、インストール部81は、販売パッケージAの機能パッケージ1のみインストールする。
Therefore, the
アップデートの場合、販売パッケージ情報74と機能パッケージ情報75とで変化があるのはバージョンの欄だけである。販売パッケージ情報更新部93は、販売パッケージ情報74のバージョンの欄を「1」から「2」に更新し、機能パッケージ情報更新部92は、機能パッケージ1のバージョンの欄を「1」から「2」に更新する。なお、機能パッケージ2はアップデートされなかったので機能パッケージ2のバージョンの欄は変更がない。
In the case of an update, the
<アップデート2>
同じ販売パッケージのアップデートの別の形態について図14に基づき説明する。アップデートの際、機能パッケージの一部又は全てが一新される場合がある。このような場合、同じ販売パッケージでもアップデートにより異なる機能パッケージに切り替わったり追加される場合がある。
<
Another form of updating the same sales package will be described with reference to FIG. When updating, some or all of the functional packages may be renewed. In such a case, the same sales package may be switched or added to a different function package due to the update.
図14では、バージョン「2」の販売パッケージAは、バージョン「1」の販売パッケージAに含まれていた機能パッケージ2がなくなり、新たに機能パッケージ3が含まれるようになっている。このような場合、機能パッケージ2はインストールしている必要がない。そこで、削除部86は、新たなバージョンの販売パッケージに含まれていて、古いバージョンの販売パッケージに含まれていない機能パッケージを検出し、その機能パッケージを削除する。削除とはHDD15から消去することをいい、アンインストールと同義である。
In FIG. 14, the sales package A of the version “2” does not include the
なお、インストール部81は、新しいバージョンの販売パッケージ1にのみ含まれている機能パッケージ3をインストールする。この機能パッケージ3をアクティベーションするか否かはアップデート前の販売パッケージの状況に従う。
The
図14では、機能パッケージ2が新しい販売パッケージAに含まれなくなったので、削除部86は機能パッケージ2を削除する。また、インストール部81は、バージョンが新しくなった機能パッケージ1と、新たに追加された機能パッケージ3をインストールする。
In FIG. 14, since the
販売パッケージ情報更新部93は、販売パッケージ情報74のバージョンの欄を「1」から「2」に更新し、機能パッケージ情報更新部92は、機能パッケージ1のバージョンの欄を「1」から「2」に更新する。また、機能パッケージ情報更新部92は、機能パッケージ情報75から機能パッケージ2の情報を削除する。そして、新たにインストールした機能パッケージ3の情報を登録する。アップデート前の機能パッケージ2の有効の欄が「○」なので、機能パッケージ3の有効販売数は「1」、有効の欄も「○」になる。
The sales package
<インストールの処理手順>
図15は、以上のインストール手順を説明するフローチャート図の一例である。図15ではユーザからの指示によりインストールが開始されるとした(S10)。
<Installation procedure>
FIG. 15 is an example of a flowchart for explaining the above installation procedure. In FIG. 15, it is assumed that installation is started by an instruction from the user (S10).
まず、インストール部81は、HDD15へのアクセスが可能か否かを判定する(S20)。アクセスが可能とは、例えばアクセスする権限があることをいう。アクセスが可能でない場合、HDD15へのアクセスを可能にできるか否かを判定する(S30)。アクセスを可能にするとは、例えば、アクセス権限のあるログイン名で新たにログインしたり、HDD15のセキュリティを調整することである(S40)。最終的にHDD15にアクセスできなければ(S30のNo)、図15の処理を終了する。
First, the
HDD15へのアクセスが可能な場合(S20のYes、S30のYes)、インストールする予定の販売パッケージを用意する(S50)。販売パッケージの用意の方法はいくつかあり、例えばサーバからダウンロードすること、HDD15に記憶されているファイルを解凍すること、メモリカード30等の記録媒体を画像形成装置100に装着して読み出すこと等ができる。いずれの場合もinfファイルが添付されている(各記憶メディアに記憶されている)。
When access to the
インストール部81は、この用意された販売パッケージの正当性を確認する(S60)。正当性の確認は、例えばユーザが入力したキーコードが販売パッケージに格納されているキーコードと一致するか否か、販売パッケージに格納されている使用可能期間内か否か、画像形成装置100の識別番号に対応づけられているか否か、等により判定される。
The
正当性が確認されない場合(S70のNo)、インストール部81は不当な販売パッケージをインストールしようとした場合の後処理を行う(S80)。例えば、エラーメッセージの表示等である。
When the validity is not confirmed (No in S70), the
正当性が確認された場合(S70のYes)、インストール部81は販売パッケージの情報ファイル(*.inf)から販売パッケージの情報を取得する(S90)。infファイルには、販売パッケージの名前、ID、機能IDリスト、販売パッケージのバージョン、販売パッケージが含む各機能パッケージのバージョン、アクティベーションの要・不要が登録されている。インストール部81は、機能パッケージに関する情報をinfファイルから読み出す(S100)。
When the validity is confirmed (Yes in S70), the
そして、重複機能検出部84は、販売パッケージに含まれる機能パッケージが既に画像形成装置100にインストールされているか否かを確認し(S110)、インストール部81は販売パッケージに含まれる機能パッケージ毎に、画像形成装置100のインストール状況に応じた処理を実行する(S120)。すなわち、
・まだインストールされていない機能パッケージはインストールする。
・インストールされているがバージョンが古い場合は新しい機能パッケージをインストールする。
・インストールされておりバージョンが同等以上の場合はインストールしない。
・新たなバージョンの販売パッケージに含まれていて、古いバージョンの販売パッケージに含まれていない機能パッケージは削除する。
Then, the duplicate function detection unit 84 confirms whether or not the function package included in the sales package has already been installed in the image forming apparatus 100 (S110), and the
• Install feature packages that are not yet installed.
・ If it is installed but the version is old, install a new function package.
・ Do not install if installed and the version is equal or higher.
-Delete function packages that are included in the new version of the sales package and are not included in the old version of the sales package.
ついで、販売パッケージ情報更新部93はインストールした販売パッケージ情報74を更新し、機能パッケージ情報更新部92はインストールした機能パッケージに関し機能パッケージ情報75を更新する(S130)。インストール部81等は以上の処理を機能パッケージ毎に繰り返し実行する。
Next, the sales package
<アクティベーション>
インストール後にアクティベーションが必要な販売パッケージのアクティベーションについて図16に基づき説明する。図2において説明したように、アクティベーションが必要な販売パッケージでは、HDD15にインストールされてもアクティベーションされなければ起動することができない。インストールされたがアクティベーションされていない販売パッケージAの販売パッケージ情報74は、アクティベーションの欄が「×」、有効の欄も「×」である。当然ながら、機能パッケージ情報75の有効販売数の欄も全て「0」になっている。
<Activation>
Activation of a sales package that requires activation after installation will be described with reference to FIG. As described with reference to FIG. 2, a sales package that requires activation cannot be activated unless it is activated even if installed in the
アクティベーション部82は、例えば、ユーザからの指示により販売パッケージAをアクティベーションする。アクティベーションにより同時に有効化される。アクティベーションされると、販売パッケージ情報更新部93は、販売パッケージ情報74のアクティベーションの欄と有効の欄にそれぞれ「○」を登録する。また、機能パッケージ情報更新部92は、機能パッケージ1、2の有効販売数をそれぞれ「1」に増やし、有効の欄にそれぞれ「○」を登録する。
For example, the activation unit 82 activates the sales package A according to an instruction from the user. It is activated at the same time by activation. When activated, the sales package
<有効化>
有効化とは、起動することや最終的な使用が許可された状態とすることである。アクティベーションされたが有効化されてない状態となることがあるが、アクティベーションしておけば、有効化は簡単な処理で完了するので、販売パッケージを起動可能な状態の直前の状態にしておくことができ、いつもで起動を許可することができる。
<Enable>
“Activation” refers to a state where activation and final use are permitted. Although it may be activated but not activated, if activated, activation is completed with a simple process, so the sales package should be in the state immediately before it can be activated. Can be allowed to start at any time.
図17は、販売パッケージの有効化を説明する図の一例である。すでに販売パッケージAはアクティベーションされているが有効化されていないので、販売パッケージ情報74のアクティベーションの欄は「○」が、有効の欄は「×」がそれぞれ登録されている。販売パッケージが有効化されていないので、機能情報パッケージの有効販売数の欄は「0」であり、有効の欄も「×」である。
FIG. 17 is an example of a diagram for explaining the activation of a sales package. Since the sales package A has already been activated but has not been activated, "O" is registered in the activation column and "X" is registered in the valid column of the
例えば、ユーザからの指示、タイマー、HDD15のアクセスが許可されたこと、などをトリガーに、有効化部83は、販売パッケージAを有効化する。すなわち、機能パッケージ1,2をそれぞれ有効化する。
For example, the activation unit 83 activates the sales package A triggered by an instruction from the user, a timer, access to the
有効化されると、販売パッケージ情報更新部93は、販売パッケージ情報74の有効の欄に「○」に登録する。また、機能パッケージ情報更新部92は、機能パッケージ1、2の有効販売数をそれぞれ「1」に増やし、有効の欄にそれぞれ「○」を登録する。
When validated, the sales package
<アクティベーション(一部機能パッケージを共有)>
アクティベーションは販売パッケージ毎に行われるので、複数の販売パッケージがインストールされた状態でアクティベーションすると、アクティベーションした販売パッケージに含まれる機能パッケージが、別の販売パッケージに含まれている場合がある。しかしながら、このような場合でもアクティベーションされるのは1つの機能パッケージだけである。
<Activation (some function packages are shared)>
Since activation is performed for each sales package, when activation is performed in a state where a plurality of sales packages are installed, a function package included in the activated sales package may be included in another sales package. However, even in this case, only one function package is activated.
図18は、インストール後にアクティベーションが必要な販売パッケージのアクティベーションを説明する図の一例である。画像形成装置100には販売パッケージAとBがインストールされているが、販売パッケージAはアクティベーションされておらず販売パッケージBはアクティベーションされている。したがって、インストールされたがアクティベーションされていない販売パッケージAの販売パッケージ情報74は、アクティベーションの欄が「×」、有効の欄も「×」、販売パッケージBの販売パッケージ情報74は、アクティベーションの欄が「○」、有効の欄も「○」である。
FIG. 18 is an example of a diagram illustrating the activation of a sales package that requires activation after installation. Sales packages A and B are installed in the
これに対応して、機能パッケージ情報75において、機能パッケージ1の販売数は「1」、有効販売数は「0」、有効の欄は「×」である。また、機能パッケージ2の販売数は「2」、有効販売数は「1」、有効の欄は「○」である。機能パッケージ3の販売数は「1」、有効販売数は「1」、有効の欄は「○」である。
Correspondingly, in the
アクティベーション部82は、例えば、ユーザからの指示により販売パッケージAをアクティベーションする。アクティベーションにより同時に有効化されるが、機能パッケージ2はすでに有効化されているので、有効化する必要はない。
For example, the activation unit 82 activates the sales package A according to an instruction from the user. Although activated at the same time by the activation, the
アクティベーションされると、販売パッケージ情報更新部93は、販売パッケージ情報74のアクティベーションの欄と有効の欄にそれぞれ「○」に登録する。また、機能パッケージ情報更新部92は、機能パッケージ1の有効販売数を「1」に増やし、有効の欄に「○」を登録する。また、機能パッケージ2の有効販売数も1つ増え「2」になる。
When activated, the sales package
<有効化(一部機能パッケージを共有)>
アクティベーションだけされ有効化を後から実行する場合も、アクティベーションと有効化を同時に実行する場合と同様である。
<Enable (some function packages are shared)>
The case where only activation is performed and activation is performed later is the same as the case where activation and activation are performed simultaneously.
図19は、アクティベーション後の有効化を説明する図の一例である。画像形成装置100には販売パッケージAとBがインストールされているが、販売パッケージAは有効化されておらず、販売パッケージBはアクティベーションかつ有効化されている。したがって、インストールされたが有効化されていない販売パッケージAの販売パッケージ情報74は、アクティベーションの欄が「○」、有効の欄は「×」、販売パッケージBの販売パッケージ情報74は、アクティベーションの欄が「○」、有効の欄も「○」である。
FIG. 19 is an example of a diagram for explaining activation after activation. Sales packages A and B are installed in the
これに対応して、機能パッケージ情報75において、機能パッケージ1の販売数は「1」、有効販売数は「0」、有効の欄は「×」である。また、機能パッケージ2の販売数は「2」、有効販売数は「1」、有効の欄は「○」である。機能パッケージ3の販売数は「1」、有効販売数は「1」、有効の欄は「○」である。
Correspondingly, in the
例えば、ユーザからの指示、タイマー、HDD15のアクセスが許可されたこと、などをトリガーに、有効化部83は、販売パッケージAを有効化する。有効化の具体的な作業は、図15と同様である。すなわち、有効化部83は機能パッケージ1を有効化する。なお、機能パッケージ2は既に有効化されているので、有効化する必要はない。
For example, the activation unit 83 activates the sales package A triggered by an instruction from the user, a timer, access to the
有効化されると、販売パッケージ情報更新部93は、販売パッケージ情報74の有効の欄に「○」に登録する。また、機能パッケージ情報更新部92は、機能パッケージ1の有効販売数を「1」に増やし、有効の欄に「○」を登録する。また、機能パッケージ2の有効販売数も1つ増え「2」になる。
When validated, the sales package
<有効化の処理手順>
図20は、有効化手順を説明するフローチャート図の一例である。図20ではユーザからの指示により有効化が開始されるとした。なお、アクティベーションの処理は有効化と同じであるので省略した。また、図20において図15と同一ステップには同じ符号を付しその説明は簡単に行う。
<Validation procedure>
FIG. 20 is an example of a flowchart for explaining the validation procedure. In FIG. 20, it is assumed that the activation is started by an instruction from the user. Since the activation process is the same as the activation process, it is omitted. In FIG. 20, the same steps as those in FIG.
まず、有効化部83は、HDD15へのアクセスが可能か否かを判定する(S20〜S40)。HDD15へのアクセスが可能な場合(S20のYes、S30のYes)、有効化は機能パッケージ毎に実行するので、有効化部83は有効化対象の販売パッケージに含まれる機能パッケージを特定する(S210)。
First, the enabling unit 83 determines whether or not access to the
図21は、ステップS210の機能パッケージの特定手順を説明するフローチャート図である。すなわち、有効化部83は販売パッケージ情報74、機能パッケージ情報75をHDD15から読み出す(S2101)。そして、有効化の対象となっている販売パッケージが含む機能パッケージ(機能IDリスト)を特定する(S2102)。以上で、有効化すべき機能パッケージを特定できた。
FIG. 21 is a flowchart for explaining the function package specifying procedure in step S210. That is, the enabling unit 83 reads the
図20に戻り、有効化部83は機能パッケージ情報75を参照して、有効化する機能パッケージの現在の状態を確認する(S220)。他の販売パッケージに含まれている機能パッケージではすでに有効化されている可能性があるからである。
Referring back to FIG. 20, the enabling unit 83 refers to the
有効化する機能パッケージが既に有効化されている場合(S230の無効状態)、有効化する必要はないので次の機能パッケージの処理に移行する。 If the function package to be activated has already been activated (invalid state in S230), it is not necessary to activate, so the process proceeds to the next function package.
有効化する機能パッケージが有効化されていない場合(S230の有効状態)、有効化部83はその機能パッケージを有効化する(S240)。以上の処理を、有効化する販売パッケージに含まれる機能パッケージについて繰り返す。 When the function package to be activated is not activated (the activated state in S230), the activation unit 83 activates the function package (S240). The above processing is repeated for the function package included in the sales package to be activated.
全ての機能パッケージの有効化処理が完了すると、販売パッケージ情報更新部93は販売パッケージ情報74を更新し、機能パッケージ情報更新部92は機能パッケージ情報75を更新する(S250)。
When the activation processing of all the function packages is completed, the sales package
〔実装後のアンインストール、ディアクティベーション、無効化〕
これまで、プログラムの実装態様について説明してきたが、実装とは逆方向のプロセスを辿ることも可能である。すなわち、アンインストールによりHDD15から販売パッケージを削除し、ディアクティベーションによりアクティベーションされていない状態にし、無効化により有効化されていない状態にすることができる。なお、ディアクティベーションされると同時に無効化される。インストール、アクティベーション、有効化の順に起動状態に近づくという意味では、無効化と有効化が対応し、ディアクティベーションとアクティベーションが対応し、インストールとアンインストールが対応する。以下、順に説明する。
[Uninstallation, deactivation, invalidation after implementation]
So far, the implementation mode of the program has been described, but it is also possible to follow the process in the opposite direction to the implementation. In other words, it is possible to delete the sales package from the
<無効化>
無効化とは有効化した販売パッケージを有効でない状態にすることをいう。無効化により、アクティベーションされているが有効化されてない状態となる。
<Disabling>
Invalidation means that an activated sales package is made invalid. Invalidation results in an activated but not activated state.
図22は、販売パッケージの無効化を説明する図の一例である。販売パッケージAはアクティベーションされ有効化されている。このため、販売パッケージ情報74のアクティベーションの欄と有効の欄はそれぞれ「○」が登録されている。販売パッケージAが有効化されているので、機能パッケージ1,2の有効販売数の欄は共に「1」であり、有効の欄も共に「○」である。
FIG. 22 is an example of a diagram for explaining invalidation of a sales package. Sales package A is activated and activated. Therefore, “◯” is registered in the activation column and the valid column of the
例えば、ユーザからの指示、有効期間切れによる更新要求などをトリガーに、無効化部89は、販売パッケージAを有効化する。完全にディアクティベーションやアンインストールする前に無効化することで、期限切れ等を知らせるメッセージを確認した後、再度、有効化するなどの使い方が可能になる。無効化部89は、例えばプログラムコンポーネントを終了させるなど、簡単な処理で使用を中断、禁止するものである。 For example, the invalidation unit 89 validates the sales package A triggered by an instruction from the user, an update request due to expiration of the validity period, or the like. By disabling it before completely deactivating or uninstalling it, it becomes possible to use it again after confirming a message that informs the expiration date, etc. The invalidating unit 89 interrupts or prohibits the use with a simple process, for example, by terminating the program component.
無効化されると、販売パッケージ情報更新部93は、販売パッケージ情報74の有効の欄に「×」に登録する。また、機能パッケージ情報更新部92は、機能パッケージ1、2の有効販売数にそれぞれ「0」を登録し、有効の欄にそれぞれ「×」を登録する。
When invalidated, the sales package
<無効化の処理手順>
図23は、無効化手順を説明するフローチャート図の一例である。図23ではユーザからの指示により無効化が開始されるとした。また、図23において図20と同一ステップには同じ符号を付しその説明は簡単に行う。
<Disabling process>
FIG. 23 is an example of a flowchart for explaining the invalidation procedure. In FIG. 23, the invalidation is started by an instruction from the user. In FIG. 23, the same steps as those in FIG.
まず、無効化部89は、HDD15へのアクセスが可能か否かを判定する(S20〜S40)。HDD15へのアクセスが可能な場合(S20のYes、S30のYes)、無効化は機能パッケージ毎に実行するので、無効化部89は無効化対象の販売パッケージに含まれる機能パッケージを特定する(S210)。ステップS210の処理は図21に示したとおりである。次いで、無効化部89は機能パッケージ情報75を参照して、無効化する機能パッケージの現在の状態を確認する(S320)。その機能パッケージではすでに無効化されている可能性があるからである。
First, the invalidation unit 89 determines whether or not access to the
無効化する機能パッケージが既に無効化されている場合(S330の無効状態)、無効化する必要はないので次の機能パッケージの処理に移行する。 If the function package to be invalidated is already invalidated (invalid state in S330), it is not necessary to invalidate, and the process proceeds to the next function package.
無効化する機能パッケージが無効化されていない場合(S330の有効状態)、無効化部89は、無効化しようとした機能パッケージが他の有効な販売パッケージに含まれているか否かを確認する(S340)。1つでも有効な販売パッケージがあればその有効性が優先されるからである。 If the function package to be invalidated has not been invalidated (valid state in S330), the invalidation unit 89 checks whether or not the functional package to be invalidated is included in another valid sales package ( S340). This is because if there is even one effective sales package, its effectiveness is given priority.
含まれている場合(S350の含まれている)、無効化できないので次の機能パッケージの処理に移行する。 If it is included (S350 is included), it cannot be invalidated, and the process proceeds to the next function package.
含まれていない場合(S350の含まれていない)、無効化部89はその機能パッケージを無効化する(S360)。以上の処理を、有効化する販売パッケージに含まれる機能パッケージについて繰り返す。 If not included (S350 is not included), the invalidating unit 89 invalidates the function package (S360). The above processing is repeated for the function package included in the sales package to be activated.
全ての機能パッケージの無効化処理が完了すると、販売パッケージ情報更新部93は販売パッケージ情報74を更新し、機能パッケージ情報更新部92は機能パッケージ情報75を更新する(S370)。
When the invalidation processing of all function packages is completed, the sales package
<ディアクティベーション>
ディアクティベーションとはアクティベーションかつ有効化された状態の販売パッケージをアクティベーションされていない状態にすることをいう。ディアクティベーションにより、例えば、アクティベーションする権限を残して機能パッケージを起動できない状態にでき、別の画像形成装置100や情報処理装置において改めてアクティベーションすることができる。
<Deactivation>
Deactivation refers to bringing a sales package that has been activated and activated into an unactivated state. By deactivation, for example, the function package cannot be activated with the right to activate, and can be reactivated in another
図24は、販売パッケージのディアクティベーションを説明する図の一例である。販売パッケージAはアクティベーションされ有効化されている。このため、販売パッケージ情報74のアクティベーションの欄と有効の欄はそれぞれ「○」が登録されている。販売パッケージAが有効化されているので、機能パッケージ1,2の有効販売数の欄は共に「1」であり、有効の欄も共に「○」である。
FIG. 24 is an example of a diagram illustrating deactivation of a sales package. Sales package A is activated and activated. Therefore, “◯” is registered in the activation column and the valid column of the
例えば、ユーザからの指示、有効期間切れによる更新要求などをトリガーに、ディアクティベーション部88は、販売パッケージAをディアクティベーションする。前者の場合、ディアクティベーションにより、例えば、販売パッケージがアクティベーションされていた画像形成装置100からアクティベーション情報を取り出し両者の関係を解消するので、そのアクティベーション情報を用いて別の画像形成装置100でアクティベーションすることが可能となる。後者の場合、有効期限が切れたので、HDD15に機能パッケージを残したまま使用を禁止できる。
For example, the
ディアクティベーションされると、販売パッケージ情報更新部93は、販売パッケージ情報74のアクティベーションの欄と有効の欄にそれぞれ「×」を登録する。また、機能パッケージ情報更新部92は、機能パッケージ1、2の有効販売数にそれぞれ「0」を登録し、有効の欄にそれぞれ「×」を登録する。
After deactivation, the sales package
<アンインストール>
アンインストールとはHDD15から販売パッケージを削除することをいう。すなわち、再インストールしなければその販売パッケージによる機能を実行することができなくなり、プログラムコンポーネントの不正利用を防止しやすくできる。
<Uninstall>
Uninstall refers to deleting a sales package from the
図25は、販売パッケージのアンインストールを説明する図の一例である。販売パッケージAはアクティベーションされ有効化されている。このため、販売パッケージ情報74のアクティベーションの欄と有効の欄はそれぞれ「○」が登録されている。なお、アンインストールは、アクティベーションされていない状態又は有効化されていない状態でも可能である。販売パッケージAが有効化されているので、機能パッケージ1,2の有効販売数の欄は共に「1」であり、有効の欄も共に「○」である。
FIG. 25 is an example of a diagram illustrating uninstallation of a sales package. Sales package A is activated and activated. Therefore, “◯” is registered in the activation column and the valid column of the
例えば、ユーザからの指示、有効期間切れになどをトリガーに、アンインストール部87は、販売パッケージAをHDD15からアンインストールする。前者の場合、例えば、有効期限が切れたのでHDD15から削除する場合、逆に有効期限を残して別の画像形成装置100にインストールしたり、残期間の料金を返還してもらうような場合が考えられる。後者の場合は、有効期限が切れたので自動的にアンインストールすることが考えられる。
For example, the
アンインストールされると、販売パッケージ情報更新部93は、販売パッケージ情報74をHDD15から削除し、機能パッケージ情報更新部92は、機能パッケージ1情報をHDD15から削除する。
When the software package is uninstalled, the sales package
<無効化(一部機能パッケージを共有)>
同じ機能パッケージを含む販売パッケージの一部が無効化された場合を説明する。図26は、販売パッケージの無効化を説明する図の一例である。販売パッケージA、Bは共にアクティベーションされ有効化されている。このため、販売パッケージA,Bのアクティベーションの欄と有効の欄はそれぞれ「○」が登録されている。販売パッケージA、Bが有効化されているので、機能パッケージ1の有効販売数は「1」有効の欄は「○」、機能パッケージ2の有効販売数は「2」有効の欄は「○」、機能パッケージ3の有効販売数は「1」有効の欄は「○」である。
<Disabling (some function packages are shared)>
A case where a part of a sales package including the same function package is invalidated will be described. FIG. 26 is an example of a diagram for explaining invalidation of a sales package. Sales packages A and B are both activated and activated. Therefore, “◯” is registered in the activation column and the valid column of the sales packages A and B, respectively. Since the sales packages A and B are activated, the number of effective sales of the
無効化部89が販売パッケージAを無効化すると、販売パッケージ情報更新部93は、販売パッケージAの有効の欄に「×」に登録する。これにより、機能パッケージ1と販売パッケージAに含まれている機能パッケージ2が無効化されるので、機能パッケージ情報更新部92は、機能パッケージ1の有効販売数を1減らして「0」に有効の欄に「×」を登録し、機能パッケージ2の有効販売数を1減らして「1」を登録する。なお、機能パッケージ2は有効販売数は「1」であるので、機能パッケージ2は無効化されない。
When the invalidation unit 89 invalidates the sales package A, the sales package
<ディアクティベーション(一部機能パッケージを共有)>
同じ機能パッケージを含む販売パッケージの一部がディアクティベーションされた場合を説明する。図27は、販売パッケージのディアクティベーションを説明する図の一例である。販売パッケージA、Bは共にアクティベーションされ有効化されている。このため、販売パッケージA、Bのアクティベーションの欄と有効の欄はそれぞれ「○」が登録されている。販売パッケージA、Bが有効化されているので、機能パッケージ1の有効販売数は「1」有効の欄は「○」、機能パッケージ2の有効販売数は「2」有効の欄は「○」、機能パッケージ3の有効販売数は「1」有効の欄は「○」である。
<Deactivation (some function packages are shared)>
A case where a part of a sales package including the same function package is deactivated will be described. FIG. 27 is an example of a diagram illustrating deactivation of a sales package. Sales packages A and B are both activated and activated. Therefore, “◯” is registered in the activation column and the valid column of the sales packages A and B, respectively. Since the sales packages A and B are activated, the number of effective sales of the
ディアクティベーション部88が販売パッケージAをディアクティベーションすると、販売パッケージ情報更新部93は、販売パッケージAのアクティベーションの欄と有効の欄にそれぞれ「×」を登録する。また、機能パッケージ1と販売パッケージAに含まれている機能パッケージ2が無効化されるので、機能パッケージ情報更新部92は、機能パッケージ1の有効販売数を1減らして「0」に有効の欄に「×」を登録し、機能パッケージ2の有効販売数を1減らして「1」を登録する。なお、機能パッケージ2は有効販売数が「1」であるので、機能パッケージ2は無効化されない。
When the
<アンインストール(一部機能パッケージを共有)>
一部の機能パッケージを共有したアンインストールには、アンインストール前の販売パッケージが有効か否かに応じて3つの態様がある。以下、順番に説明する。
・いずれも有効な販売パッケージの一方をアンインストール
同じ機能パッケージを含む販売パッケージの一部が無効化された場合を説明する。図28は、販売パッケージのアンインストールを説明する図の一例である。販売パッケージA、Bは共にアクティベーションされ有効化されている。このため、販売パッケージA、Bのアクティベーションの欄と有効の欄はそれぞれ「○」が登録されている。販売パッケージA、Bが有効化されているので、機能パッケージ1の有効販売数は「1」有効の欄は「○」、機能パッケージ2の有効販売数は「2」有効の欄は「○」、機能パッケージ3の有効販売数は「1」有効の欄は「○」である。
<Uninstall (some function packages are shared)>
There are three modes of uninstallation in which some function packages are shared, depending on whether the sales package before the uninstallation is valid or not. Hereinafter, it demonstrates in order.
-Uninstall one of the sales packages that are all valid. Explain the case where a part of the sales package that contains the same functional package is invalidated. FIG. 28 is an example of a diagram illustrating uninstallation of a sales package. Sales packages A and B are both activated and activated. Therefore, “◯” is registered in the activation column and the valid column of the sales packages A and B, respectively. Since the sales packages A and B are activated, the number of effective sales of the
アンインストール部87が販売パッケージAをアンインストールすると、販売パッケージ情報更新部93は、販売パッケージAの情報を全て消去する。これにより、機能パッケージ1と販売パッケージAに含まれている機能パッケージ2がアンインストールされるので、機能パッケージ情報更新部92は、機能パッケージ1の情報を消去する。また、機能パッケージ2の販売数を1減らして「1」に、有効販売数を1減らして「1」にする。なお、機能パッケージ2は有効販売数が「1」であるので、機能パッケージ2は無効化されない。
・一方が有効でない販売パッケージのうち有効な方をアンインストール
図29は、販売パッケージのアンインストールを説明する図の一例である。販売パッケージAはアクティベーションされ有効化されているが、販売パッケージBはアクティベーションされているが有効化されていない。この状態で販売パッケージAをアンインストールすると、有効な販売パッケージがなくなることになる。
When the
Uninstalling the valid one of the sales packages in which one is not valid FIG. 29 is an example of a diagram for explaining the uninstallation of the sales package. Sales package A is activated and activated, but sales package B is activated but not activated. If the sales package A is uninstalled in this state, there is no valid sales package.
販売パッケージAのアクティベーションの欄と有効の欄はそれぞれ「○」が、販売パッケージBのアクティベーションの欄は「○」だが有効の欄は「×」が登録されている。販売パッケージAだけ有効化されているので、機能パッケージ1の有効販売数は「1」有効の欄は「○」、機能パッケージ2の有効販売数は「1」有効の欄は「○」、機能パッケージ3の有効販売数は「0」有効の欄は「×」である。
“O” is registered in the activation column and the valid column of the sales package A, “O” is registered in the activation column of the sales package B, but “X” is registered in the valid column. Since only the sales package A is activated, the number of valid sales of the
アンインストール部87が販売パッケージAをアンインストールすると、販売パッケージ情報更新部93は、販売パッケージAの情報を全て消去する。これにより、機能パッケージ1と販売パッケージAに含まれている機能パッケージ2がアンインストールされるので、機能パッケージ情報更新部92は、機能パッケージ1の情報を全て消去する。また、機能パッケージ2の販売数を1減らして「1」を、有効販売数を1減らして「0」をそれぞれ登録する。有効販売数が「0」なので、機能パッケージ2の有効の欄は「×」になる。したがって、機能パッケージ2,3のいずれも有効でなくなる。
・一方が有効でない販売パッケージのうち有効でない方をアンインストール
図30は、販売パッケージのアンインストールを説明する図の一例である。販売パッケージAはアクティベーションされているが有効化されておらず、販売パッケージBはアクティベーションされ有効化されている。この状態で販売パッケージAをアンインストールする。
When the
Uninstalling one of the sales packages that is not valid is not effective FIG. 30 is an example of a diagram for explaining how to uninstall a sales package. Sales package A is activated but not activated, and sales package B is activated and activated. In this state, the sales package A is uninstalled.
販売パッケージAのアクティベーションの欄は「○」が有効の欄は「×」が、販売パッケージBのアクティベーションの欄と有効の欄は「○」が、それぞれ登録されている。販売パッケージBだけ有効化されているので、機能パッケージ1の有効販売数は「0」有効の欄は「×」、機能パッケージ2の有効販売数は「1」有効の欄は「○」、機能パッケージ3の有効販売数は「1」有効の欄は「○」である。
In the activation field of the sales package A, “X” is registered for the valid field, and “◯” is registered for the activation field and the valid field of the sales package B. Since only the sales package B is activated, the number of effective sales of the
アンインストール部87が販売パッケージAをアンインストールすると、販売パッケージ情報更新部93は、販売パッケージAの情報を全て消去する。これにより、機能パッケージ1と販売パッケージAに含まれている機能パッケージ2がアンインストールされるので、機能パッケージ情報更新部92は、機能パッケージ1の情報を全て消去する。また、機能パッケージ2の販売数を1減らして「1」を登録する。機能パッケージ2の有効販売数は変化しないので「1」のままであり、有効の欄も「○」のままである。したがって、機能パッケージ2は有効のままである。また、機能パッケージ3の機能パッケージ情報75には変化がない。
When the
<アンインストールの処理手順>
図31は、アンインストール手順を説明するフローチャート図の一例である。図31ではユーザからの指示により有効化が開始されるとした。なお、図31において図20と同一ステップには同じ符号を付しその説明は簡単に行う。
<Uninstallation procedure>
FIG. 31 is an example of a flowchart for explaining the uninstallation procedure. In FIG. 31, it is assumed that the activation is started by an instruction from the user. In FIG. 31, the same steps as those in FIG.
まず、アンインストール部87は、HDD15へのアクセスが可能か否かを判定する(S20〜S40)。HDD15へのアクセスが可能な場合(S20のYes、S30のYes)、アンインストールは機能パッケージ毎に実行するので、アンインストール部87はアンインストール対象の販売パッケージに含まれる機能パッケージを特定する(S210)。ステップS210の処理は図21に示したとおりである。
販売パッケージをアンインストールすると、含まれている機能パッケージが他の販売パッケージに含まれているか否かや有効化されているか否かにより処理が変わってくるので、処理内容決定部91は機能パッケージ毎に適切な処理(以下、アンインストール時処理という)を決定する(S410)。
図32はアンインストール時処理の手順を示すフローチャート図の一例である。処理内容決定部91は、アンインストールする販売パッケージに含まれている機能パッケージが現在有効か否かを確認する(S4010)。
First, the
When the sales package is uninstalled, the processing changes depending on whether the included function package is included in another sales package or whether the function package is activated. Appropriate processing (hereinafter referred to as uninstallation processing) is determined (S410).
FIG. 32 is an example of a flowchart showing the procedure of uninstallation processing. The processing
例えば、図28では、機能パッケージ1、2は共に有効であり、図29では、機能パッケージ1、2は共に有効であり、図30では、機能パッケージ1は有効でないが機能パッケージ2が有効である。
For example, in FIG. 28, the
有効状態な場合(S4020のYes)、アンインストールする販売パッケージに含まれている有効な機能パッケージが、他の有効な販売パッケージに含まれているか否かを確認する(S4030)。 If it is in the valid state (Yes in S4020), it is confirmed whether the valid function package included in the sales package to be uninstalled is included in another valid sales package (S4030).
他の有効な販売パッケージに含まれている場合は(S4040のYes)、アンインストールも無効化もできないので、何もしない(S4100)。すなわち、図28の機能パッケージ2,図30の機能パッケージ2は有効なままである。
If it is included in another valid sales package (Yes in S4040), nothing can be done because neither uninstallation nor invalidation is possible (S4100). That is, the
他の有効な販売パッケージに含まれていない場合(S4040のNo)、アンインストールする販売パッケージに含まれている有効な機能パッケージが、他の販売パッケージに含まれているか否かを確認する(S4050)。有効でない販売パッケージに含まれているため、今回のアンインストールでその機能パッケージは有効でなくなる。 If it is not included in another valid sales package (No in S4040), it is confirmed whether or not a valid function package included in the sales package to be uninstalled is included in the other sales package (S4050). ). Because it is included in a non-valid sales package, the feature package is no longer valid for this uninstall.
このため、他の販売パッケージに含まれている場合(S4060のYes)、処理内容決定部91はその機能パッケージを無効化すると決定する(S4070)。すなわち、図29の機能パッケージ2は無効化される。
For this reason, when it is included in another sales package (Yes in S4060), the processing
一方、他の販売パッケージに含まれていない場合(S4060のNo)、消去してよいことになるので、処理内容決定部91はその機能パッケージをアンインストールすると決定する(S4110)。すなわち、図28、29の機能パッケージ1はHDD15から消去される。
On the other hand, if it is not included in another sales package (No in S4060), it can be deleted, so the processing
ステップS4020に戻り、有効状態でない場合(S4020のNo)、アンインストールする販売パッケージに含まれている機能パッケージが、他の販売パッケージに含まれているか否かを確認する(S4080)。例えば、図30の機能パッケージ1は有効でないが、他の販売パッケージに含まれていない。
Returning to step S4020, if it is not in the valid state (No in S4020), it is confirmed whether the function package included in the sales package to be uninstalled is included in another sales package (S4080). For example, the
含まれていない場合(S4090のNo)、処理内容決定部91はその機能パッケージをアンインストールすると決定する(S4110)。すなわち、図30の機能パッケージ1はHDD15から消去される。
If not included (No in S4090), the processing
含まれている場合(S4090のYes)、すでに有効でないことになるので、アンインストール対象の機能パッケージには何もしない(S4100)。 If it is included (Yes in S4090), it is already invalid, so nothing is performed on the function package to be uninstalled (S4100).
以上のロジックで機能パッケージ毎に処理内容を決定すると、図31に戻り、アンインストール部87は、処理内容に基づき、販売パッケージに含まれる機能パッケージがアンインストール可能か否かを判定する(S420)。
When the processing content is determined for each function package by the above logic, the process returns to FIG. 31 and the
アンインストールが可能な機能パッケージであれば(S430のYes)、アンインストール部87は販売パッケージに含まれる機能パッケージをアンインストールする(S440)。
If it is a function package that can be uninstalled (Yes in S430), the
アンインストールすると、販売パッケージ情報更新部93は販売パッケージ情報74を更新し、機能パッケージ情報更新部92は機能パッケージ情報75を更新する(S450)。
When uninstalling, the sales package
以上のように、アンインストールする際、機能パッケージの共用状態、有効化の有無等に応じて、適切にアンインストールすることができる。 As described above, when uninstalling, it can be appropriately uninstalled according to the sharing state of function packages, presence / absence of activation, and the like.
〔起動処理〕
続いて、実装されたプログラムの起動について説明する。上記のように、各プラグインコンポーネント(機能パッケージ)73の起動は、起動情報77に基づいてプラグインスタータ72により制御される。このため、販売パッケージのインストールする際は、販売パッケージが含む各機能パッケージの起動順を起動情報77に登録する。このため、各販売パッケージには起動情報77を生成するための情報が含まれている。
〔Start process〕
Next, activation of the installed program will be described. As described above, activation of each plug-in component (functional package) 73 is controlled by the plug-in
図33(a)は、販売パッケージに含まれるパッケージ内容を模式的に説明する図の一例である。例えば、この販売パッケージには3つの機能パッケージA〜Cが含まれている。また、上記のinfファイルと起動順を定義した起動順定義ファイル95がパッケージされている。起動順定義ファイル95には、例えば、「起動順:1.機能パッケージA、2.機能パッケージB、3.機能パッケージC」のように起動順が定義されている。
FIG. 33 (a) is an example of a diagram for schematically explaining package contents included in a sales package. For example, this function package includes three function packages A to C. Also, a start
図33(b)は、起動処理におけるインストール管理部の機能ブロック図の一例を示す。起動情報更新部94は、インストールした販売パッケージの起動順定義ファイル95に従い、起動情報77に起動順を登録する。同様に、インストール時だけでなく、アクティベーション又は有効化により機能パッケージが有効化された場合、起動情報更新部94は有効化された機能パッケージを起動情報77に登録する。
FIG. 33B shows an example of a functional block diagram of the installation management unit in the startup process. The activation
起動情報77に登録される順番は、起動情報77への登録順である。しかし、起動順定義ファイル95に他の販売パッケージの機能パッケージに対する起動順が定義されている場合は、それに従い既に登録されている機能パッケージより前に登録されてもよい。
The order of registration in the
また、起動情報更新部94は、有効化されている機能パッケージを起動情報77に登録するので、機能パッケージ情報75を参照して有効な機能パッケージを登録し、無効になった機能パッケージは削除する。
以下、いくつかの例を具体的に説明する。
In addition, since the activation
Several examples will be specifically described below.
<起動情報77の更新1>
図34は、販売パッケージの実装と起動情報77の関係の一例を説明する図である。図34では、販売パッケージと矢印で結ばれた機能パッケージがその販売パッケージに含まれることを示す。販売パッケージAには、機能パッケージ1、2,5が含まれ、販売パッケージBには機能パッケージ1,3が含まれ、販売パッケージCには機能パッケージ2,3、4が含まれる。
<
FIG. 34 is a diagram for explaining an example of the relationship between the sales package mounting and the
初期状態の販売パッケージAは有効、販売パッケージBは無効である。このため、機能パッケージ1,2,5は有効化されており、起動情報77には機能パッケージ1,2、5が登録されている。この状態から販売パッケージCをインストールする。したがって、販売パッケージCに含まれる機能パッケージ2、3、4は、それまで有効であればそのままに、インストールされていてそれまで無効であれば有効になり、インストールされていなければ有効になる。
機能パッケージ2:有効のまま
機能パッケージ3:無効→有効
機能パッケージ4:アンインストール→有効
したって、起動情報更新部94は新たに有効になった機能パッケージ3,4を起動情報77に登録する。機能パッケージ3,4の登録順は、起動順定義ファイル95に定義されている順番である。
The initial sales package A is valid and the sales package B is invalid. For this reason, the function packages 1, 2, and 5 are activated, and the function packages 1, 2, and 5 are registered in the
If the
<起動情報77の更新2>
図35は、販売パッケージの実装と起動情報77の関係の一例を説明する図である。図35は、図34で販売パッケージCが有効になった状態であるので、初期状態の機能パッケージ1〜5はいずれも有効である。この状態から販売パッケージCをアンインストールする。
<
FIG. 35 is a diagram for explaining an example of the relationship between the sales package mounting and the
したがって、販売パッケージCにのみ含まれる機能パッケージ4は、アンインストールされる。また、販売パッケージBはもともと無効なので、販売パッケージCとBにのみ含まれる機能パッケージCは無効化される。
機能パッケージ2:販売パッケージAが有効なので有効のまま
機能パッケージ3:有効→無効
機能パッケージ4:有効→アンインストール
したって、起動情報更新部94は新たに無効になった機能パッケージ3、アンインストールされた機能パッケージ4を、起動情報77から削除する。
Therefore, the function package 4 included only in the sales package C is uninstalled. Since the sales package B is originally invalid, the function package C included only in the sales packages C and B is invalidated.
Function package 2: Sales package A is valid and remains valid Function package 3: Valid → Invalid Function package 4: Valid → Uninstalled, the startup
<起動情報77の更新3>
起動順に制約がある場合を説明する。図36は、販売パッケージの実装と起動情報77の関係の一例を説明する図である。なお、図36の初期状態は図34と同じで、その初期状態に販売パッケージCをインストール点でも同様である。
機能パッケージ2:有効のまま
機能パッケージ3:無効→有効
機能パッケージ4:アンインストール→有効
したって、起動情報更新部94は新たに有効になった機能パッケージ3,4を起動情報77に登録するが、販売パッケージCは起動順定義ファイル95に起動順を定義している。図36では、「1.機能パッケージ2、2.機能パッケージ3、3.機能パッケージ4」の順番である。このような起動順は、機能パッケージ間の依存関係がある場合に定義される。図36では、例えば機能パッケージ4は機能パッケージ3の機能を利用するため、機能パッケージ4よりも前に機能パッケージ3が起動している必要がある場合等である。
<Update 3 of
A case where there are restrictions in the order of activation will be described. FIG. 36 is a diagram for explaining an example of the relationship between the sales package mounting and the
Function package 2: Remains valid Function package 3: Invalid → Valid function package 4: Uninstall → Valid The activation
起動情報更新部94は、有効化された機能パッケージがある場合、起動順定義ファイル95を参照して、適切な順番で機能パッケージを起動情報77に登録する。
When there is an activated function package, the activation
以上説明したように、本実施形態の画像形成装置100は、既にインストールされている機能パッケージはインストールしないので、効率的なインストールが可能となる。また、アンインストール時は、アンインストールしない販売パッケージに含まれている機能パッケージは削除しないので、残った販売パッケージに影響を与えることもない。すなわち、複数の販売パッケージが含む複数の機能パッケージが、一部重複するような構成の場合、実用的なプログラムの実装が容易に実現できる。
As described above, the
15 HDD
60 インストール管理部
71 プラグイン管理部
72 プラグインスタータ
73 プラグインコンポーネント(機能パッケージ)
74 販売パッケージ情報
75 機能パッケージ情報
77 起動情報
100 画像形成装置
15 HDD
60
74
Claims (10)
記憶装置に既にインストールされているパッケージに含まれるプログラムコンポーネントのリストを記憶したパッケージ情報記憶手段と、
インストールされているプログラムコンポーネント毎にインストール数を記憶したプログラム情報記憶手段と、
インストール対象のパッケージに添付された設定ファイルを記憶する記憶媒体から、前記設定ファイルに登録されたプログラムコンポーネントのリストを読み出し、前記パッケージ情報記憶手段に記憶されたリストと突合し、既にインストールされているプログラムコンポーネントを検出する重複プログラム検出手段と、
既にインストールされていないプログラムコンポーネントのみをインストールするインストール手段と、
インストールしたプログラムコンポーネントをインストール数と共に前記プログラム情報記憶手段に登録し、重複していることが検出されたプログラムコンポーネントのインストール数を1つ増加させるプログラム情報更新手段と、
を有することを特徴とする情報処理装置。 An information processing apparatus that installs one or more program components included in one package into a storage device in units of packages,
Package information storage means for storing a list of program components included in a package already installed in the storage device;
Program information storage means for storing the number of installations for each installed program component;
A program that has already been installed by reading a list of program components registered in the setting file from a storage medium that stores the setting file attached to the package to be installed, and matching the list stored in the package information storage means Duplicate program detection means for detecting components;
Installation means to install only program components that are not already installed;
Program information update means for registering the installed program component together with the number of installations in the program information storage means, and increasing the number of installed program components detected to be one by one;
An information processing apparatus comprising:
前記パッケージ情報記憶手段に記憶されたリストを参照し、アンインストール対象のパッケージに含まれるプログラムコンポーネントが、他のパッケージに含まれているか否かを判定する削除判定手段と、
他のパッケージに含まれていない、アンインストール対象のパッケージに含まれるプログラムコンポーネントを消去するアンインストール手段と、を有し、
前記プログラム情報更新手段は、前記プログラム情報記憶手段に登録されている、アンインストール対象のパッケージに含まれ、かつ、他のパッケージにも含まれているプログラムコンポーネントのインストール数を1つ減少させる、
ことを特徴とする請求項1記載の情報処理装置。 When uninstalling a given package,
A deletion determination unit that refers to a list stored in the package information storage unit and determines whether or not a program component included in a package to be uninstalled is included in another package;
Uninstalling means for erasing program components included in the package to be uninstalled, which are not included in other packages,
The program information update unit decreases the number of installed program components included in the package to be uninstalled and registered in the program information storage unit by one and is also included in other packages,
The information processing apparatus according to claim 1.
起動又は起動可能状態のプログラムコンポーネントを起動不可状態にする無効化手段と、
を有することを特徴とする請求項1又は2記載の情報処理装置。 An enabling means for activating or enabling an installed program component; and
A disabling means for disabling the startable or startable program component;
The information processing apparatus according to claim 1, further comprising:
アクティベーションにより生成されたアクティベーション情報を消去するディアクティベーション手段と、
を有することを特徴とする請求項3記載の情報処理装置。 An activation means for generating activation information indicating that the right to use has been granted for each package;
A deactivation means for erasing the activation information generated by the activation;
The information processing apparatus according to claim 3, further comprising:
ことを特徴とする請求項4記載の情報処理装置。 In the configuration file, it is registered whether activation is required after installation in order to activate or activate.
The information processing apparatus according to claim 4.
同じプログラムコンポーネント同士のバージョンを比較するバージョン判定手段と、
インストール対象のパッケージに含まれていないプログラムコンポーネントを、記憶装置から削除する削除手段と、を有し、
前記インストール手段は、バージョンが新しいプログラムコンポーネントのみインストールする、
ことを特徴とする請求項1〜5いずれか1項記載の情報処理装置。 When installing the same package that is already installed,
Version determination means for comparing versions of the same program component;
Deleting means for deleting program components not included in the package to be installed from the storage device;
The installation means installs only a program component having a new version,
The information processing apparatus according to claim 1, wherein the information processing apparatus is an information processing apparatus.
インストール対象のパッケージに添付された起動順定義ファイルに従い、前記起動情報に複数のプログラムコンポーネントの起動順を登録する起動順決定手段と、
を有することを特徴とする請求項1〜6いずれか1項記載の情報処理装置。 An activation order information storage means for storing activation information in which the activation order of a plurality of program components is registered;
In accordance with a boot order definition file attached to a package to be installed, boot order determining means for registering boot orders of a plurality of program components in the boot information,
The information processing apparatus according to claim 1, further comprising:
インストールされているプログラムコンポーネント毎にインストール数を記憶したプログラム情報記憶手段と、を有する情報処理装置に、
1つのパッケージに含まれる1以上のプログラムコンポーネントを、パッケージ単位でインストールするインストール方法であって、
重複プログラム検出手段が、インストール対象のパッケージに添付された設定ファイルを記憶する記憶媒体から、前記設定ファイルに登録されたプログラムコンポーネントのリストを読み出し、前記パッケージ情報記憶手段に記憶されたリストと突合し、既にインストールされているプログラムコンポーネントを検出するステップと、
インストール手段が、既にインストールされていないプログラムコンポーネントのみをインストールするステップと、
プログラム情報更新手段が、インストールしたプログラムコンポーネントをインストール数と共に前記プログラム情報記憶手段に登録し、重複していることが検出されたプログラムコンポーネントのインストール数を1つ増加させるステップと、
を有することを特徴とするインストール方法。 A package information storage means for storing a list of program components included in the already installed package;
In an information processing apparatus having program information storage means for storing the number of installations for each installed program component,
An installation method for installing one or more program components included in one package in units of packages,
The duplicate program detection means reads a list of program components registered in the setting file from a storage medium that stores the setting file attached to the package to be installed, and matches the list stored in the package information storage means, Detecting program components already installed; and
The installation means only installs program components that are not already installed;
The program information update means registers the installed program component together with the number of installations in the program information storage means, and increases the number of installations of the program component detected to be duplicated by one.
An installation method characterized by comprising:
インストールされているプログラムコンポーネント毎にインストール数を記憶したプログラム情報記憶手段と、を有する情報処理装置に、
入力手段から、1つのパッケージに含まれる1以上のプログラムコンポーネントを、パッケージ単位でインストールする指示を受け付けるステップと、
インストール対象のパッケージに添付された設定ファイルを記憶する記憶媒体から、前記設定ファイルに登録されたプログラムコンポーネントのリストを読み出し、前記パッケージ情報記憶手段に記憶されたリストと突合し、既にインストールされているプログラムコンポーネントを検出するステップと、
既にインストールされていないプログラムコンポーネントのみをインストールするステップと、
インストールしたプログラムコンポーネントをインストール数と共に前記プログラム情報記憶手段に登録し、重複していることが検出されたプログラムコンポーネントのインストール数を1つ増加させるステップと、
を実行させるプログラム。 A package information storage means for storing a list of program components included in the already installed package;
In an information processing apparatus having program information storage means for storing the number of installations for each installed program component,
Receiving an instruction to install one or more program components included in one package in units of packages from the input means;
A program that has already been installed by reading a list of program components registered in the setting file from a storage medium that stores the setting file attached to the package to be installed, and matching the list stored in the package information storage means Detecting a component;
Installing only program components that are not already installed;
Registering the installed program components together with the number of installations in the program information storage means, and increasing the number of installed program components detected to be duplicated by one;
A program that executes
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008284687A JP5239755B2 (en) | 2008-11-05 | 2008-11-05 | Information processing apparatus, installation method, program, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008284687A JP5239755B2 (en) | 2008-11-05 | 2008-11-05 | Information processing apparatus, installation method, program, and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010113476A true JP2010113476A (en) | 2010-05-20 |
JP5239755B2 JP5239755B2 (en) | 2013-07-17 |
Family
ID=42302000
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008284687A Expired - Fee Related JP5239755B2 (en) | 2008-11-05 | 2008-11-05 | Information processing apparatus, installation method, program, and storage medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5239755B2 (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011254369A (en) * | 2010-06-03 | 2011-12-15 | Canon Inc | Image forming system and control method for the same, information processor, and program |
JP2012069079A (en) * | 2010-09-27 | 2012-04-05 | Kyocera Mita Corp | Electronic apparatus and application management program |
US8595720B2 (en) | 2010-02-18 | 2013-11-26 | Ricoh Company, Limited | Program management system, program management method, client, and computer program product |
US8612739B2 (en) | 2009-12-28 | 2013-12-17 | Ricoh Company, Ltd. | System, apparatus, and method for inhibiting operation that modifies program configuration |
JP2014059772A (en) * | 2012-09-18 | 2014-04-03 | Canon Inc | Image forming apparatus, pre-installation method of application, and program |
JP2015228230A (en) * | 2015-07-09 | 2015-12-17 | 株式会社リコー | Information processing system, information processing apparatus, program, and information processing method |
CN111124480A (en) * | 2019-12-19 | 2020-05-08 | 北京奇艺世纪科技有限公司 | Application package generation method and device, electronic equipment and storage medium |
JP2020119402A (en) * | 2019-01-25 | 2020-08-06 | 株式会社リコー | Information processing apparatus, information processing system, information processing method, and program |
JP2020119403A (en) * | 2019-01-25 | 2020-08-06 | 株式会社リコー | Information processing apparatus, information processing system, information processing method, and program |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106886422A (en) * | 2017-04-07 | 2017-06-23 | 广州华多网络科技有限公司 | Method for upgrading software and device, electronic equipment |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003122537A (en) * | 2001-10-15 | 2003-04-25 | Minolta Co Ltd | License management device and management system |
JP2004341820A (en) * | 2003-05-15 | 2004-12-02 | Nec Corp | Nonfree program management system, nonfree program management method, and nonfree program management program |
JP2006202017A (en) * | 2005-01-20 | 2006-08-03 | Sharp Corp | Information processor, information storage device, function expansion system for information processor, function expansion method and function deletion method for information processor, and function expansion program and function deletion program for information processor |
JP2006227871A (en) * | 2005-02-17 | 2006-08-31 | Fujitsu Ten Ltd | Updating system, information processor, information distribution device, and updating method |
JP2007518284A (en) * | 2003-08-29 | 2007-07-05 | ソニー エリクソン モバイル コミュニケーションズ, エービー | Method and system for registration of licensing modules in a mobile device |
JP2007249333A (en) * | 2006-03-14 | 2007-09-27 | Ricoh Co Ltd | Installation method, installation control program, and storage medium |
JP2008041057A (en) * | 2006-08-10 | 2008-02-21 | Ricoh Co Ltd | Image processor, image forming apparatus, program management method, and management program for managing same program |
JP2008065618A (en) * | 2006-09-07 | 2008-03-21 | Fuji Electric Holdings Co Ltd | Built-in device capable of updating backup data accompanying firmware update |
JP2008159053A (en) * | 2006-12-20 | 2008-07-10 | Thomson Licensing | Method and device for secure software installation |
-
2008
- 2008-11-05 JP JP2008284687A patent/JP5239755B2/en not_active Expired - Fee Related
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003122537A (en) * | 2001-10-15 | 2003-04-25 | Minolta Co Ltd | License management device and management system |
JP2004341820A (en) * | 2003-05-15 | 2004-12-02 | Nec Corp | Nonfree program management system, nonfree program management method, and nonfree program management program |
JP2007518284A (en) * | 2003-08-29 | 2007-07-05 | ソニー エリクソン モバイル コミュニケーションズ, エービー | Method and system for registration of licensing modules in a mobile device |
JP2006202017A (en) * | 2005-01-20 | 2006-08-03 | Sharp Corp | Information processor, information storage device, function expansion system for information processor, function expansion method and function deletion method for information processor, and function expansion program and function deletion program for information processor |
JP2006227871A (en) * | 2005-02-17 | 2006-08-31 | Fujitsu Ten Ltd | Updating system, information processor, information distribution device, and updating method |
JP2007249333A (en) * | 2006-03-14 | 2007-09-27 | Ricoh Co Ltd | Installation method, installation control program, and storage medium |
JP2008041057A (en) * | 2006-08-10 | 2008-02-21 | Ricoh Co Ltd | Image processor, image forming apparatus, program management method, and management program for managing same program |
JP2008065618A (en) * | 2006-09-07 | 2008-03-21 | Fuji Electric Holdings Co Ltd | Built-in device capable of updating backup data accompanying firmware update |
JP2008159053A (en) * | 2006-12-20 | 2008-07-10 | Thomson Licensing | Method and device for secure software installation |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8612739B2 (en) | 2009-12-28 | 2013-12-17 | Ricoh Company, Ltd. | System, apparatus, and method for inhibiting operation that modifies program configuration |
US8595720B2 (en) | 2010-02-18 | 2013-11-26 | Ricoh Company, Limited | Program management system, program management method, client, and computer program product |
JP2011254369A (en) * | 2010-06-03 | 2011-12-15 | Canon Inc | Image forming system and control method for the same, information processor, and program |
JP2012069079A (en) * | 2010-09-27 | 2012-04-05 | Kyocera Mita Corp | Electronic apparatus and application management program |
JP2014059772A (en) * | 2012-09-18 | 2014-04-03 | Canon Inc | Image forming apparatus, pre-installation method of application, and program |
JP2015228230A (en) * | 2015-07-09 | 2015-12-17 | 株式会社リコー | Information processing system, information processing apparatus, program, and information processing method |
JP2020119402A (en) * | 2019-01-25 | 2020-08-06 | 株式会社リコー | Information processing apparatus, information processing system, information processing method, and program |
JP2020119403A (en) * | 2019-01-25 | 2020-08-06 | 株式会社リコー | Information processing apparatus, information processing system, information processing method, and program |
CN111124480A (en) * | 2019-12-19 | 2020-05-08 | 北京奇艺世纪科技有限公司 | Application package generation method and device, electronic equipment and storage medium |
CN111124480B (en) * | 2019-12-19 | 2023-07-25 | 北京奇艺世纪科技有限公司 | Method and device for generating application program package, electronic equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
JP5239755B2 (en) | 2013-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5239755B2 (en) | Information processing apparatus, installation method, program, and storage medium | |
JP5107159B2 (en) | Image forming apparatus, activation method, program, storage medium | |
JP5454035B2 (en) | Image processing apparatus, remote management system, license update method, and license update program | |
US8613082B2 (en) | License management server, license management method, and computer program product | |
US8910304B2 (en) | Information processing device and multifunction peripheral | |
JP5268694B2 (en) | License management system, image forming apparatus, and license management method | |
US10970023B2 (en) | Printing system for directly transmitting a print job to printer when a server is unavailable and printer driver program | |
JP2010055525A (en) | Image forming apparatus, license determination method, program and recording medium | |
JP2011170465A (en) | System, method, and program for software distribution | |
US20150294093A1 (en) | Management system, information processing device, management server, control method therefor, and program | |
US20110061048A1 (en) | Image forming device, installing method, and recording medium | |
JP2019212114A (en) | Information processing device, control method thereof, and program | |
JP2021002081A (en) | Information processing apparatus, control method thereof and program | |
JP2008171306A (en) | Electronic device and program | |
JP2004303216A (en) | Information processor, image forming apparatus, error processing method in starting program, and recording medium | |
JP2011180902A (en) | License management system, license management method, and program | |
JP2011180888A (en) | Information processor, information processing method and program, and license management system | |
JP2009147655A (en) | Information processing system, image input/output device, and data processing method | |
US11330129B2 (en) | Image forming system, image forming apparatus, and storing medium storing application control program | |
JP4444641B2 (en) | Information processing apparatus, image forming apparatus, and electronic data transfer method | |
US20230300268A1 (en) | Information processing apparatus, image forming apparatus, and method of installing an application program therefor | |
JP7424457B2 (en) | Image forming device and program | |
JP2011098444A (en) | Printer, program and server apparatus | |
JP7039962B2 (en) | Image processing equipment, image forming equipment and programs | |
US10356265B2 (en) | Image processing apparatus and application management method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110913 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121121 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121127 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130125 |
|
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: 20130305 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130318 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160412 Year of fee payment: 3 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5239755 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160412 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |