JP2002229790A - Program composing method, program composing program, fraudulent use preventing function adding method, and fraudulent use preventing function adding program - Google Patents

Program composing method, program composing program, fraudulent use preventing function adding method, and fraudulent use preventing function adding program

Info

Publication number
JP2002229790A
JP2002229790A JP2001021506A JP2001021506A JP2002229790A JP 2002229790 A JP2002229790 A JP 2002229790A JP 2001021506 A JP2001021506 A JP 2001021506A JP 2001021506 A JP2001021506 A JP 2001021506A JP 2002229790 A JP2002229790 A JP 2002229790A
Authority
JP
Japan
Prior art keywords
application program
program
identification information
computer
unauthorized use
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.)
Pending
Application number
JP2001021506A
Other languages
Japanese (ja)
Inventor
Katsumichi Sekimoto
克理 関本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
FFC Ltd
Original Assignee
FFC Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by FFC Ltd filed Critical FFC Ltd
Priority to JP2001021506A priority Critical patent/JP2002229790A/en
Publication of JP2002229790A publication Critical patent/JP2002229790A/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a program composing method capable of simply adding a new function to be executed prior to a process by an optional application program described with an execution form to the application program. SOLUTION: The contents of the optional application program described with the execution form are added to the end of the contents of an additional function program described with the execution form by the program composing method. The additional function program duplicates the application program added with its function after a process to realize its function on a computer, executes the duplicated application program, and deletes the duplicated application program when the execution of the duplicated application program is finished.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、任意のアプリケー
ションプログラムに新たな機能を追加するためのプログ
ラムをそのアプリケーションプログラムに合成するプロ
グラム合成方法,,及び、任意のアプリケーションプロ
グラムが不正に使用されるのを防止する機能を当該アプ
リケーションプログラムに追加するための不正使用防止
機能追加プログラムに、関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a program synthesizing method for synthesizing a program for adding a new function to an arbitrary application program to the application program, and a method for illegally using an arbitrary application program. The present invention relates to a program for adding an unauthorized use prevention function for adding a function for preventing the application program to the application program.

【0002】[0002]

【従来の技術】一般に、バイナリ等の実行形式で記述さ
れた既存のアプリケーションプログラムに対し、そのア
プリケーションプログラムによる処理よりも先に実行さ
せるべき新たな機能(例えば不正コピープロテクト機能
及びその解除機能など)を追加するには、所定の言語に
よるテキスト形式で記述されたソースプログラムを修正
して新たなソースプログラムを作成せねばならない場合
が多い。
2. Description of the Related Art Generally, a new function (for example, an illegal copy protection function and a release function thereof) to be executed for an existing application program described in an executable form such as a binary before the processing by the application program is performed. In many cases, it is necessary to modify a source program described in a text format in a predetermined language to create a new source program.

【0003】特に、そのアプリケーションプログラムを
複数販売する際に、各アプリケーションプログラムの使
用を各々の購入者のみに限定するために、各アプリケー
ションプログラムの製品毎に一意に付与されるライセン
スキーやライセンスキー判定機能や使用限定解除機能な
どを各アプリケーションプログラムに追加する場合に
は、各ソフトウエアのソースプログラムを一つ一つ修正
してライセンスキーや各機能を追加しなければならない
こともある。
In particular, when a plurality of application programs are sold, a license key uniquely assigned to each product of each application program and a license key determination are performed in order to limit the use of each application program to only each purchaser. When adding a function or a use restriction release function to each application program, it may be necessary to modify the source program of each software one by one to add a license key and each function.

【0004】[0004]

【発明が解決しようとする課題】しかしながら、既存の
アプリケーションプログラムに新たな機能を追加しよう
としても、そのアプリケーションプログラムが他者によ
って作成された場合や、その開発から十分に期間が経過
している場合には、そのソースプログラムを入手するこ
とができないことがあった。また、既存のアプリケーシ
ョンプログラムのソースプログラムが入手できたとして
も、ソースプログラムを改造しようとする者にその知識
が無ければ、アプリケーションプログラムに新機能を追
加することはできず、たとえソースプログラムが改造で
きたとしても、新規障害(バグ)を生じさせてしまうこ
とが多く、費用と時間が掛かってしまう。
However, even if an attempt is made to add a new function to an existing application program, if the application program has been created by another person or if a sufficient period has elapsed since its development. In some cases, the source program could not be obtained. Even if the source program of an existing application program is available, if the person who intends to modify the source program does not have the knowledge, new functions cannot be added to the application program. Even so, new failures (bugs) are often caused, and cost and time are required.

【0005】また、当該アプリケーションプログラムに
新たな機能を追加する場合、その新たな機能を実現する
アプリケーションプログラムによって当該アプリケーシ
ョンプログラムを実行させるようにこのアプリケーショ
ンプログラムを組んだり、両アプリケーションプログラ
ムを順次実行させるバッチファイルを組むこともできる
が、その場合には、機能を追加する毎に、当該アプリケ
ーションプログラムのファイル名とは異なるファイル名
のファイルを増加させてしまうこととなる。
[0005] When a new function is added to the application program, the application program is configured so that the application program is executed by an application program that realizes the new function, or a batch program that executes both application programs sequentially. A file can be formed, but in this case, each time a function is added, the number of files having a file name different from the file name of the application program is increased.

【0006】なお、上述したようなライセンスキーを用
いた不正(違法)使用防止方法によると、正確なライセ
ンスキーを用いれば、複数のコンピュータに当該アプリ
ケーションプログラムを繰り返しインストールすること
ができてしまうという問題があった。そのため、同一ラ
イセンスキーを有するアプリケーションプログラムが複
数のコンピュータ上で同時に実行させることもできてし
まっていた。
[0006] According to the above-described method for preventing unauthorized (illegal) use using a license key, the problem is that the application program can be repeatedly installed on a plurality of computers if an accurate license key is used. was there. Therefore, an application program having the same license key can be executed simultaneously on a plurality of computers.

【0007】さらに、アプリケーションプログラムに含
まれるライセンスキーを、ネットワークを介して接続さ
れるホストコンピュータやサーバーに通知することによ
り、不正使用や不正インストールを監視する方法も提案
されているが、そのシステムを構築するのに費用と時間
が掛かってしまう。
[0007] Furthermore, a method has been proposed for monitoring unauthorized use or installation by notifying a host computer or a server connected via a network of a license key included in an application program. It costs money and time to build.

【0008】本発明は、上述したような従来の技術の問
題点に鑑みてなされたものであり、その第1の課題は、
実行形式で記述された任意のアプリケーションプログラ
ムによる処理よりも先に実行されるべき新たな機能を当
該アプリケーションプログラムに簡単に追加することが
できるプログラム合成方法及びプログラム合成プログラ
ムを、提供することであり、その第2の課題は、実行形
式で記述された任意のアプリケーションプログラムが不
正に使用されないようするための機能を当該アプリケー
ションプログラムに簡単に追加させ得る不正使用防止機
能追加方法及び不正使用防止機能追加プログラムを、提
供することである。
[0008] The present invention has been made in view of the above-mentioned problems of the prior art, and the first problem is that:
A program synthesizing method and a program synthesizing program capable of easily adding a new function to be executed prior to a process by an arbitrary application program described in an execution format to the application program, and The second problem is that an unauthorized use prevention function adding method and an unauthorized use prevention function addition program that can easily add a function for preventing an arbitrary application program described in an executable form from being used illegally to the application program. Is to provide.

【0009】[0009]

【課題を解決するための手段】上記第1の課題を解決す
るために構成された本発明は、実行形式で記述された追
加機能プログラムの内容の末尾に、実行形式で記述され
た任意のアプリケーションプログラムの内容を足し合わ
せることにより、合成済アプリケーションプログラムを
生成するプログラム合成方法であって、前記追加機能プ
ログラムは、所定の機能を実現する処理をコンピュータ
に行わせるとともに、その処理の後、コンピュータに対
し、自己を含む合成済アプリケーションプログラムの中
から自己以外の部分を複製させ、複製された部分に相当
するアプリケーションプログラムを実行させ、そのアプ
リケーションプログラムの実行が終了したときにそのア
プリケーションプログラムの削除を行わせるプログラム
であることを、特徴とする。
According to the present invention, which is configured to solve the first problem, an optional application program described in an executable format is added to the end of the content of an additional function program described in an executable format. A program synthesizing method for generating a synthesized application program by adding contents of the programs, wherein the additional function program causes a computer to perform processing for realizing a predetermined function, and after the processing, causes the computer to execute the processing. On the other hand, a part other than the self is duplicated from the synthesized application program including the self, the application program corresponding to the duplicated part is executed, and when the execution of the application program ends, the application program is deleted. That the program To.

【0010】以上のように構成されると、共に実行形式
で記述された追加機能プログラムの内容と任意のアプリ
ケーションプログラムの内容とがこの順で単に足し合わ
されるので、この足し合わされたプログラムである合成
済アプリケーションプログラムをコンピュータに実行さ
せた場合には、合成済アプリケーションプログラムのう
ちの追加機能プログラムの部分による処理が先に実行さ
れ、アプリケーションプログラムの部分による処理は実
行されない。
With the above configuration, the contents of the additional function program and the contents of any application program, both described in the executable form, are simply added in this order. When the completed application program is executed by the computer, the processing by the part of the additional function program in the synthesized application program is executed first, and the processing by the part of the application program is not executed.

【0011】この合成済アプリケーションプログラムが
コンピュータに実行された場合、先に実行される追加機
能プログラムの部分により、所定の機能を実現する処理
が行われ、合成済アプリケーションプログラムのうちの
追加機能プログラムの部分以外の部分が複製された後
に、複製された部分に相当するアプリケーションプログ
ラムが実行される。また、この複製されたアプリケーシ
ョンプログラムの実行が終了したときには、この複製さ
れたアプリケーションプログラムが削除される。
When the synthesized application program is executed by a computer, a process for realizing a predetermined function is performed by a part of the additional function program executed first, and the additional function program of the synthesized application program is executed. After the part other than the part is copied, an application program corresponding to the copied part is executed. When the execution of the copied application program ends, the copied application program is deleted.

【0012】このように、追加機能プログラムは、アプ
リケーションプログラムに追加するための機能をコンピ
ュータに実行させた後で必ずアプリケーションプログラ
ムによる処理を実行させる機能を、有しているので、こ
の追加機能プログラムの内容の末尾に任意のアプリケー
ションプログラムの内容を足し合わせるプログラム合成
方法によれば、アプリケーションプログラムのソースプ
ログラムを改造することなく、簡単に新たな機能を追加
することができる。また、実行形式で記述されたアプリ
ケーションプログラムがあれば、直接そのアプリケーシ
ョンプログラムに機能を追加することができるので、そ
のソースプログラムが入手できなくても良いし、ソース
プログラムを改造することによる障害(バグ)が発生す
ることもない。さらに、プログラミングに関する知識が
なくとも、簡単にアプリケーションプログラムに別の機
能を追加させることができる。
As described above, since the additional function program has a function of causing the computer to execute a function to be added to the application program, it always executes the processing by the application program. According to the program synthesizing method of adding the content of an arbitrary application program to the end of the content, a new function can be easily added without modifying the source program of the application program. Also, if there is an application program written in an executable format, functions can be directly added to the application program. Therefore, it is not necessary to obtain the source program. ) Does not occur. Further, it is possible to easily add another function to the application program without any knowledge about programming.

【0013】また、本発明のプログラム合成プログラム
は、実行形式で記述された追加機能プログラムの内容の
末尾に対して実行形式で記述された任意のアプリケーシ
ョンプログラムの内容を足し合わせることによって構成
される合成済アプリケーションプログラムを、コンピュ
ータに生成させるプログラム合成プログラムであって、
前記追加機能プログラムは、所定の機能を実現する処理
をコンピュータに行わせるとともに、その処理の後、コ
ンピュータに対し、自己を含む合成済アプリケーション
プログラムの中から自己以外の部分を複製させ、複製さ
れた部分に相当するアプリケーションプログラムを実行
させ、そのアプリケーションプログラムの実行が終了し
たときにそのアプリケーションプログラムの削除を行わ
せるプログラムであることを、特徴とする。
A program synthesizing program according to the present invention is a synthesizing program constituted by adding the contents of an arbitrary application program described in an executable form to the end of the contents of an additional function program described in an executable form. A program synthesizing program for causing a computer to generate a used application program,
The additional function program causes the computer to perform processing for realizing a predetermined function, and after the processing, causes the computer to copy a portion other than the self from the synthesized application program including the self, and the copied An application program corresponding to the portion is executed, and when the execution of the application program ends, the application program is deleted.

【0014】従って、このプログラム合成プログラムを
用いれば、コンピュータを、上述した本発明のプログラ
ム合成方法を実現する装置として機能させることができ
ることになる。
Therefore, by using this program synthesizing program, the computer can function as an apparatus for realizing the above-described program synthesizing method of the present invention.

【0015】また、上記第2の課題を解決するために構
成された本発明は、実行形式で記述された不正使用防止
プログラムの内容の末尾に対して実行形式で記述された
任意のアプリケーションプログラムの内容を足し合わせ
ることによって構成される合成済アプリケーションプロ
グラムを、複数生成するとともに、各合成済アプリケー
ションプログラムを相互に識別可能とするための識別情
報を、各合成済アプリケーションプログラムのうちの不
正使用防止プログラムの部分に夫々付加する不正使用防
止機能追加方法であって、前記不正使用防止プログラム
は、LANを介して他の端末装置に接続されているコン
ピュータに対し、自己に付加されている識別情報をLA
N上の全ての端末装置に向けて定期的に送信させ、LA
N上の何れかの端末装置から識別情報が送信された場合
には自己に付加される識別情報と比較させ、それら識別
情報同士が一致していない時のみ、自己を含む合成済ア
プリケーションプログラムの中から自己以外の部分を複
製させ、その複製された部分に相当するアプリケーショ
ンプログラムを実行させ、そのアプリケーションプログ
ラムの実行が終了した時にその複製されたアプリケーシ
ョンプログラムの削除を行わせるとともに、それら識別
情報同士が一致した時には前記複製されたアプリケーシ
ョンプログラムによる処理を強制終了させるプログラム
であることを、特徴とする。
Further, according to the present invention, which is configured to solve the second problem, an arbitrary application program described in an executable form is added to the end of the contents of the unauthorized use prevention program described in an executable form. A plurality of synthesized application programs configured by adding the contents are generated, and identification information for enabling the synthesized application programs to be identified from each other is provided by an unauthorized use prevention program among the synthesized application programs. And a method for adding an unauthorized use prevention function to a computer connected to another terminal device via a LAN.
N to all terminal devices on N periodically.
When the identification information is transmitted from any of the terminal devices on N, the identification information is compared with the identification information added to itself, and only when the identification information does not coincide with the identification information in the synthesized application program including itself. From the other, the application program corresponding to the duplicated part is executed, and when the execution of the application program is completed, the duplicated application program is deleted. The program is a program for forcibly terminating the processing by the duplicated application program when they match.

【0016】以上のように構成されると、識別情報が付
加された実行形式の不正使用防止プログラムと実行形式
の任意のアプリケーションプログラムとがこの順で足し
合わされるので、この足し合わされたプログラムである
合成済アプリケーションプログラムをコンピュータに実
行させた場合には、合成済アプリケーションプログラム
のうちの追加機能プログラムの部分による処理が先に実
行され、アプリケーションプログラム部分による処理は
実行されない。
With the above configuration, the executable form unauthorized use prevention program to which the identification information is added and the arbitrary application program in the executable form are added in this order, and thus the program is the added program. When the synthesized application program is executed by the computer, the processing by the additional function program portion of the synthesized application program is executed first, and the processing by the application program portion is not executed.

【0017】この合成済アプリケーションプログラム
が、LANを介して他の端末装置に接続されているコン
ピュータに実行された場合、先に実行される不正使用防
止プログラムの部分による処理では、自己に付加されて
いる識別情報がLAN上の全ての端末装置に向けて定期
的に送信される。また、LAN上の何れかの端末装置か
ら識別情報が送信された場合にはその識別情報と自己に
付加される識別情報とが比較され、それら識別情報同士
が一致していない時には、合成済アプリケーションプロ
グラムの中から不正使用防止プログラム以外の部分が複
製され、その複製された部分に相当するアプリケーショ
ンプログラムが実行され、そのアプリケーションプログ
ラムの実行が終了した時にそのアプリケーションプログ
ラムが削除される。一方、何れかの端末装置から送信さ
れた識別情報が自己のものと一致した時には、その複製
されたアプリケーションプログラムによる処理が強制終
了される。
When the synthesized application program is executed by a computer connected to another terminal device via the LAN, the processing by the part of the unauthorized use prevention program executed first is added to itself. The identification information is periodically transmitted to all terminal devices on the LAN. Further, when identification information is transmitted from any terminal device on the LAN, the identification information is compared with the identification information added to itself, and when the identification information does not match, the combined application A portion other than the unauthorized use prevention program is copied from the program, an application program corresponding to the copied portion is executed, and the application program is deleted when the execution of the application program ends. On the other hand, when the identification information transmitted from any of the terminal devices matches the identification information of the terminal device, the process by the copied application program is forcibly terminated.

【0018】これにより、同じ識別情報が付加されてい
る合成済プログラムがLAN上の複数の端末装置におい
て同時期に使用された場合、それら全ての端末装置で
は、複製されたアプリケーショプログラムの実行が強制
終了される。従って、LAN上の複数の端末装置におい
て、同じライセンスキーが付加された合成済プログラム
が同時に実行されることがない。
Thus, when the synthesized program to which the same identification information is added is used in a plurality of terminal devices on the LAN at the same time, execution of the copied application program is compulsory in all the terminal devices. Will be terminated. Therefore, a plurality of terminal devices on the LAN do not simultaneously execute the combined program to which the same license key is added.

【0019】また、この不正使用防止プログラムの内容
の末尾に任意のアプリケーションプログラムの内容を足
し合わせる不正使用防止機能追加方法によれば、アプリ
ケーションプログラムのソースプログラムを改造するこ
となく簡単に、不正使用防止機能を追加することができ
る。さらに、実行形式で記述されたアプリケーションプ
ログラムがあれば、直接そのアプリケーションプログラ
ムに不正使用防止機能を追加することができるので、そ
のソースプログラムが入手できなくても良いし、ソース
プログラムを改造することによる障害(バグ)が発生す
ることもないし、プログラミングに関する知識がなくて
も簡単にアプリケーションプログラムに不正使用防止機
能を追加させることができる。
Further, according to the method for adding an unauthorized use prevention function by adding the contents of an arbitrary application program to the end of the contents of the unauthorized use prevention program, the unauthorized use prevention can be easily performed without modifying the source program of the application program. Features can be added. Furthermore, if there is an application program written in an executable form, an unauthorized use prevention function can be directly added to the application program, so that the source program does not have to be available, and the source program can be modified. No failure (bug) occurs, and an unauthorized use prevention function can be easily added to an application program without knowledge of programming.

【0020】また、本発明の不正使用防止機能追加プロ
グラムは、コンピュータに対し、実行形式で記述された
不正使用防止プログラムの内容の末尾に対して実行形式
で記述された任意のアプリケーションプログラムの内容
を足し合わせることによって構成される合成済アプリケ
ーションプログラムを、複数生成させるとともに、各合
成済アプリケーションプログラムを相互に識別可能とす
るための識別情報を、各合成済アプリケーションプログ
ラムのうちの不正使用防止プログラムの部分に夫々付加
させる不正使用防止機能追加プログラムであって、前記
不正使用防止プログラムは、LANを介して他の端末装
置に接続されているコンピュータに対し、自己に付加さ
れている識別情報をLAN上の全ての端末装置に向けて
定期的に送信させ、LAN上の何れかの端末装置から識
別情報が送信された場合には自己に付加される識別情報
と比較させ、それら識別情報同士が一致していない時の
み、自己を含む合成済アプリケーションプログラムの中
から自己以外の部分を複製させ、その複製された部分に
相当するアプリケーションプログラムを実行させ、その
アプリケーションプログラムの実行が終了した時にその
複製されたアプリケーションプログラムの削除を行わせ
るとともに、それら識別情報同士が一致した時には前記
複製されたアプリケーションプログラムによる処理を強
制終了させるプログラムであることを、特徴とする。
The program for adding an unauthorized use prevention function according to the present invention provides a computer with the contents of an arbitrary application program described in an executable form at the end of the contents of the unauthorized use prevention program described in an executable form. A plurality of synthesized application programs are generated by adding together, and identification information for enabling each synthesized application program to be identified from each other is included in a portion of the unauthorized application prevention program in each synthesized application program. A program for adding an unauthorized use prevention function to a computer connected to another terminal device via the LAN, the identification information added to the computer being connected to another terminal device via the LAN. Periodically send to all terminal devices When the identification information is transmitted from any of the terminal devices on the LAN, the identification information is compared with the identification information added thereto, and only when the identification information does not match, the synthesized application program including the self is included. From the other, the application program corresponding to the duplicated part is executed, and when the execution of the application program is completed, the duplicated application program is deleted. The program is a program for forcibly terminating the processing by the duplicated application program when they match.

【0021】従って、この不正使用防止機能追加プログ
ラムを用いれば、コンピュータを、上述した本発明の不
正使用防止機能追加方法を実現する装置として機能させ
ることができることになる。
Therefore, by using this program for adding an unauthorized use prevention function, a computer can be made to function as an apparatus for implementing the above-described method for adding an unauthorized use prevention function of the present invention.

【0022】なお、不正使用防止プログラムとしては、
コンピュータに対し、識別情報の入力があった場合に自
己に付加された識別情報と比較させ、その識別情報同士
が一致している時に初めて、自己を含む合成済アプリケ
ーションプログラムの中から自己以外の部分を複製させ
るものであっても良い。
Incidentally, the unauthorized use prevention program includes:
When the computer inputs the identification information, the computer compares the identification information with the identification information added to the computer. May be duplicated.

【0023】[0023]

【発明の実施の形態】本発明に係るプログラム合成方法
は、既に製品として完成したアプリケーションプログラ
ムによる処理よりも先に実行されるべき新たな機能を当
該アプリケーションプログラムに簡単に追加できるよう
にしたものである。その概要を述べるならば、上記のプ
ログラム合成方法は、上記の新たな機能を実現する処理
をコンピュータに行わせる追加機能プログラムを既に製
品として完成したアプリケーションプログラムに合成す
ることによって、当該アプリケーションプログラムに追
加される。このようなプログラムの合成は、その合成を
コンピュータに行わせるプログラムを用いることによっ
て行われ、そのプログラム合成用のプログラムは、CD
−ROMディスク等の記憶媒体に格納された状態で、例
えば上記アプリケーションプログラムを作成したソフト
ウエア制作業者やその販売業者などに販売される。そし
て、このプログラム合成用のプログラムを購入した業者
などは、そのプログラムを各々のコンピュータにインス
トールすることによって、プログラムの合成、即ち、完
成品であるアプリケーションプログラムへの新たな機能
の追加を実施することができるようになり、その実施に
より新たな機能が追加されたアプリケーションプログラ
ムをエンドユーザに提供できるようになる。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A program synthesizing method according to the present invention is such that a new function to be executed prior to processing by an application program already completed as a product can be easily added to the application program. is there. In summary, the above-described program synthesizing method adds an additional function program that causes a computer to perform processing for realizing the above-described new function to an application program that has already been completed as a product, thereby adding the program to the application program. Is done. The synthesis of such a program is performed by using a program that causes a computer to perform the synthesis, and the program for synthesizing the program is a CD.
-Stored in a storage medium such as a ROM disk or the like, and sold to, for example, a software creator who has created the application program or a distributor thereof. The vendor or the like who purchased the program for synthesizing the program installs the program on each computer, thereby synthesizing the program, that is, adding a new function to the completed application program. It is possible to provide an end user with an application program to which a new function is added by the implementation.

【0024】なお、完成品であるアプリケーションプロ
グラムに追加される新たな機能としては様々なものがあ
るが、以下においては、アプリケーションプログラムに
追加される新たな機能がそのアプリケーションプログラ
ムの不正(違法)使用防止機能であるときの実施の形態
について、図を参照しながら説明する。但し、以下の説
明では、先に、アプリケーションプログラムへ不正使用
防止機能を追加する処理の内容について図1乃至図6を
用いて説明し、その後に、不正使用防止機能が追加され
たアプリケーションプログラムが実行されたときの処理
の内容について図7乃至図9を用いて説明する。
There are various new functions to be added to the completed application program. In the following, the new functions to be added to the application program are based on illegal (illegal) use of the application program. An embodiment when the function is a prevention function will be described with reference to the drawings. However, in the following description, first, the contents of the processing for adding the unauthorized use prevention function to the application program will be described with reference to FIGS. 1 to 6, and thereafter, the application program with the added unauthorized use prevention function will be executed. The contents of the processing when the processing is performed will be described with reference to FIGS.

【0025】アプリケーションプログラムへ不正使用防
止機能を追加する処理を実行するためのコンピュータと
しては、キーボードやマウス等の入力装置と各種画面を
表示するディスプレイと本体とを備えた一般に市販され
ているコンピュータを用いることができる。その本体の
内部回路は、図1の概略構成図に示されるように、CP
U11,RAM12,ハードディスクドライブ(HD
D)13,フロッピー(登録商標)ディスクドライブ
(FDD)14,CD−ROMドライブ15等のハード
ウエアを、主要な構成としている。
As a computer for executing a process for adding an unauthorized use preventing function to an application program, a generally commercially available computer having an input device such as a keyboard and a mouse, a display for displaying various screens, and a main body is used. Can be used. As shown in the schematic configuration diagram of FIG.
U11, RAM12, hard disk drive (HD
D) 13, a floppy (registered trademark) disk drive (FDD) 14, a CD-ROM drive 15, and other hardware are the main components.

【0026】CPU11は、各ハードウエア全体を統合
的に制御する中央処理装置であり、RAM12は、この
CPU11が読み出した各種のプログラムをキャッシュ
するとともに、CPU11による作業領域が展開される
ランダムアクセスメモリである。
The CPU 11 is a central processing unit for integrally controlling each hardware, and the RAM 12 is a random access memory that caches various programs read by the CPU 11 and expands a work area of the CPU 11. is there.

【0027】HDD13には、アプリケーションプログ
ラムの実行を管理し、若しくはネットワーク管理等のシ
ステム管理を行うためのオペレーティングシステム(O
S)プログラムが格納されているとともに、各種の機能
を実現するためのアプリケーションプログラムやデータ
が格納されている。
The HDD 13 has an operating system (O / O) for managing the execution of application programs or performing system management such as network management.
S) In addition to storing programs, application programs and data for realizing various functions are stored.

【0028】このHDD13に格納される各種のプログ
ラムには、不正使用防止機能を実現する処理や後述する
他の処理をコンピュータに行わせる不正使用防止プログ
ラム(追加機能プログラムに相当)が、含まれるととも
に、この不正使用防止プログラムを完成品のアプリケー
ションプログラムに合成するための合成プログラム(プ
ログラム合成プログラム及び不正使用防止機能追加プロ
グラムに相当)が、含まれる。なお、以下においては、
実行形式で記述された不正使用防止プログラムと実行形
式で記述されたアプリケーションプログラムとを合成し
たプログラムを、便宜上、「合成済アプリ」という。
The various programs stored in the HDD 13 include an unauthorized use prevention program (corresponding to an additional function program) for causing a computer to execute a process for realizing an unauthorized use prevention function and other processes described later. And a synthesizing program (corresponding to a program synthesizing program and a program for adding an unauthorized use preventing function) for synthesizing the unauthorized use preventing program into a completed application program. In the following,
A program that combines the unauthorized use prevention program described in the executable format and the application program described in the executable format is referred to as a “combined application” for convenience.

【0029】また、HDD13に格納される各種のプロ
グラムには、上記の合成プログラムによる処理において
複数生成される各合成済アプリの夫々を一義的に区別す
るための情報であるライセンスキーを生成するためのラ
イセンスキー生成プログラムも、含まれる。
The various programs stored in the HDD 13 are used to generate license keys, which are information for uniquely identifying each of the plurality of synthesized applications generated in the processing by the above-described synthesis program. Is also included.

【0030】FDD14及びCD−ROMドライブ15
には、各種プログラムやデータ、若しくはそのバージョ
ンアップ版をインストールする際に、新たなプログラム
が格納されたフロッピーディスク(コンピュータ可読媒
体)16又はCD−ROMディスク(コンピュータ可読
媒体)17が夫々セットされ、これらフロッピーディス
ク16又はCD−ROMディスク17からプログラムや
データが読み出される。このようにして読み出された各
種プログラムやデータは、HDD13等の記憶装置にイ
ンストールされる。
FDD 14 and CD-ROM drive 15
When installing various programs and data, or an upgraded version thereof, a floppy disk (computer-readable medium) 16 or a CD-ROM disk (computer-readable medium) 17 storing a new program is set therein. Programs and data are read from the floppy disk 16 or the CD-ROM disk 17. The various programs and data thus read are installed in a storage device such as the HDD 13.

【0031】なお、HDD13に格納される不正使用防
止プログラムや合成プログラムやライセンスキー生成プ
ログラムは、それらプログラムを格納したフロッピィデ
ィスク16やCD−ROMディスク17がFDD14や
CD−ROMドライブ15にセットされてそれらドライ
ブ14,15から読み出されることにより、HDD13
にインストールされたものであっても良い。
The unauthorized use prevention program, the synthesizing program, and the license key generation program stored in the HDD 13 are stored in the floppy disk 16 or the CD-ROM disk 17 in which the programs are stored in the FDD 14 or the CD-ROM drive 15. By being read from the drives 14 and 15, the HDD 13
May be installed.

【0032】次に、このコンピュータ10が実行するラ
イセンスキー生成処理について説明する。なお、HDD
13内のOSプログラムを読み出して実行したCPU1
1が、HDD13内のライセンスキー生成プログラムを
読み出して実行することにより、このコンピュータ10
は、ライセンスキー生成処理を行うことができるように
なる。そのライセンスキー生成処理の開始後、CPU1
1は、ライセンスキー生成画面をディスプレイに表示さ
せる。
Next, a license key generation process executed by the computer 10 will be described. In addition, HDD
CPU 1 that has read and executed the OS program in
1 reads out and executes the license key generation program in the HDD 13 so that the computer 10
Can perform a license key generation process. After the license key generation process starts, the CPU 1
1 displays a license key generation screen on a display.

【0033】このライセンスキー作成画面は、上記のラ
イセンスキーを作成するために用いられる画面であり、
ここで作成されるライセンスキーは、ライセンスキー作
成画面に入力された情報に基づいて生成されるユーザコ
ードに対して所定のロジックによる暗号化処理を施すこ
とによって得られるものである。そのユーザコードは、
本コンピュータ10の操作者(上述したソフトウエア制
作業者やその販売業者など)がアプリケーションプログ
ラムの制作会社や製品名などを特定するために任意に定
義した文字列と,合成済アプリに製造番号としての情報
を付与するための通し番号である数字列と,ライセンス
キーの使用期間及び使用期限を示す数字列とから構成さ
れる。
This license key creation screen is a screen used to create the license key.
The license key created here is obtained by performing an encryption process by a predetermined logic on a user code generated based on the information input on the license key creation screen. The user code is
A character string arbitrarily defined by an operator of the computer 10 (such as the above-described software creator or its distributor) to specify a production company or a product name of the application program, and a character string of the synthesized application as a serial number. It consists of a number string that is a serial number for giving information, and a number string that indicates the use period and the expiration date of the license key.

【0034】より具体的に説明する。なお、図2に、コ
ンピュータ10のディスプレイに表示されるライセンス
キー作成画面の一例を示す。この図2に示されるよう
に、ライセンスキー作成画面20は、ユーザコードを構
成する文字列を入力するための複数のテキストボックス
22a〜22kと,これら各テキストボックス22a〜
22kに入力された文字列に基づいてユーザコードを作
成するとともにそのユーザコードに基づいてライセンス
キーを作成する際に操作者がクリックすべき生成ボタン
23と,この生成ボタン23がクリックされることによ
って生成されるユーザコード及びライセンスキーのデー
タを格納するユーザコードファイルのファイル名を入力
するためのテキストボックス24とが示された画面であ
る。なお、このライセンスキー作成画面20の最下欄に
は、ユーザコードからライセンスキーへの変換状態又は
ライセンスキーからユーザコードへの変換状態を確認す
るために用いられるテキストボックス25a,25b及
びそれらの変換を行う際に操作者がクリックすべき矢印
ボタン26a,26bも、示されている。
This will be described more specifically. FIG. 2 shows an example of a license key creation screen displayed on the display of the computer 10. As shown in FIG. 2, the license key creation screen 20 includes a plurality of text boxes 22a to 22k for inputting character strings constituting a user code, and the text boxes 22a to 22k.
The user generates a user code based on the character string input to 22k and generates a license key based on the user code. 5 is a screen showing a text box 24 for inputting a file name of a user code file for storing data of a generated user code and a license key. In the lowermost column of the license key creation screen 20, text boxes 25a and 25b used for confirming a conversion state from a user code to a license key or a conversion state from a license key to a user code and their conversions are displayed. Arrow buttons 26a and 26b that the operator should click when performing the operation are also shown.

【0035】ここで、上記のライセンスキー作成画面2
0の各テキストボックス22a〜22kのうち、テキス
トボックス22aは、アプリケーションプログラムの制
作会社を識別するための情報(会社コード)としての文
字列を入力するためものであり、テキストボックス22
bは、そのアプリケーションプログラムを製品として識
別するための情報(製品コード)を入力するためもので
あり、テキストボックス22cは、アプリケーションプ
ログラムの内容の変更や改良の回数を識別するための情
報(バージョンコード)としての文字列を入力するため
のものであり、テキストボックス22dは、操作者が識
別用に任意に定義した情報(その他コード)としての文
字列を入力するためのものである。また、テキストボッ
クス22eは、第1の通し番号の開始番号(自然数)を
入力するためのものであり、テキストボックス22f
は、その開始番号から自然数1ずつ昇順するように生成
される第1の通し番号の個数を入力するためのものであ
り、テキストボックス22gは第2の通し番号の開始番
号を、テキストボックス22hは第2の通し番号の生成
個数を、夫々入力するためのものである。さらに、テキ
ストボックス22i,22jは、ライセンスキーの使用
開始年及び月を夫々入力するためのものであり、テキス
トボックス22kは、その開始年月からの使用期限を入
力するためのものである。
Here, the above license key creation screen 2
0, the text box 22a is for inputting a character string as information (company code) for identifying the production company of the application program.
b is for inputting information (product code) for identifying the application program as a product, and the text box 22c is for entering information (version code) for identifying the number of times of change or improvement of the contents of the application program. ), And the text box 22d is for inputting a character string as information (other codes) arbitrarily defined by the operator for identification. The text box 22e is for inputting the start number (natural number) of the first serial number, and is used for inputting the text box 22f.
Is for inputting the number of first serial numbers generated in ascending order by a natural number 1 from the start number. The text box 22g is the start number of the second serial number, and the text box 22h is the second serial number. Is used to input the number of generated serial numbers. Further, the text boxes 22i and 22j are for inputting the use start year and month of the license key, respectively, and the text box 22k is for inputting the expiration date from the start year and month.

【0036】ところで、このライセンスキー作成画面2
0には、上述したテキストボックス22a〜22kに入
力された文字列や数字列をユーザコードに組み込むかど
うかを操作者に対して選択可能とさせるために、複数の
チェックボックス21a〜21gが備えられている。具
体的には、各チェックボックス21a〜21gは、夫
々、会社コード,製品コード,バージョンコード,その
他コード,第1の通し番号としての第1シリアルコー
ド,第2の通し番号としての第2シリアルコード,及
び、使用期限コードに対応しており、例えば、ユーザコ
ードを製品コードとその他コードと第1シリアルコード
の3つのコードのみからなるように構成させたい場合に
は、チェックボックス21b,21d,21eのみをク
リックしてチェックマークを入力する。このように、上
記7種のコードから任意のコードを幾つか選択すること
により、操作者は、独自の定義に基づくユーザコードを
作成することができる。なお、ユーザコードに用いるコ
ードの数や各チェックボックス22a〜22kに入力さ
れる文字列の数を増減させることによりユーザコード全
体の文字列の長さを調節することもできる。
By the way, this license key creation screen 2
0 is provided with a plurality of check boxes 21a to 21g in order to allow the operator to select whether or not to incorporate the character string or the number string entered in the text boxes 22a to 22k into the user code. ing. Specifically, each of the check boxes 21a to 21g includes a company code, a product code, a version code, other codes, a first serial code as a first serial number, a second serial code as a second serial number, and For example, when the user code is to be configured to include only three codes of the product code, the other code, and the first serial code, only the check boxes 21b, 21d, and 21e are required. Click to enter a check mark. Thus, by selecting some arbitrary codes from the above seven types of codes, the operator can create a user code based on an original definition. The length of the character string of the entire user code can be adjusted by increasing or decreasing the number of codes used for the user code and the number of character strings input to the check boxes 22a to 22k.

【0037】例えば、「0」番から「9」番までの通し番
号を有する10個のユーザコードを作成する場合であっ
て、各ユーザコードに、「AAA」の文字列からなる会社
コードと,「GK」の文字列からなる製品コードと,「0
3」の文字列からなるバージョンコードとを含ませると
ともに、これらユーザコードを西暦2000年10月か
ら無期限に使用可能とするときには、先ず、会社コー
ド,製品コード及びバージョンコードのチェックボック
ス21a〜21cと第1シリアルコードのチェックボッ
クス21eと使用期限コードのチェックボックス21g
をクリックしてチェックマークを入力する(その他のチ
ェックボックス21d,21fには入力しない)ととも
に、会社コードと製品コードとバージョンコードのテキ
ストボックス22a〜22cに、夫々、「AAA」,「G
K」,「03」と入力する。また、第1シリアルコードの
開始番号のテキストボックス22eに「00」と入力し、
生成数のテキストボックス22fに「10」と入力すると
ともに、開始年月及び使用期限の各テキストボックス2
4a〜24cに、夫々、「2000」年の「10」月から「無
期限」のように入力する。
For example, in a case where ten user codes having serial numbers from “0” to “9” are created, each user code includes a company code composed of a character string “AAA” and “ Product code consisting of the character string "GK" and "0
In order to include a version code consisting of a character string of "3" and make these user codes usable indefinitely from October 2000, first, check boxes 21a to 21c for company code, product code and version code. And first serial code check box 21e and expiration date check box 21g
Click to enter a check mark (do not enter in the other check boxes 21d and 21f), and enter "AAA" and "G" in the text boxes 22a to 22c of the company code, product code and version code, respectively.
K ”and“ 03 ”. Also, enter “00” in the text box 22e of the start number of the first serial code,
Enter "10" in the generation number text box 22f, and enter the start date and expiration date text box 2f.
In each of 4a to 24c, the user inputs "indefinite" from "10" month of "2000".

【0038】そして、このようにしてライセンスキー作
成画面20に入力がなされた後に、操作者によってテキ
ストボックス24にユーザコードファイルのファイル名
が入力されて生成ボタン23がクリックされると、CP
U11は、ユーザコードの文字列と,そのユーザコード
の文字列に所定のロジックによる暗号化処理を施して得
られるライセンスキーの文字列とを生成(上の例で言え
ば10個ずつ生成)し、テキストボックス24に示され
るファイル名のユーザコードファイルの中に全データを
格納する。
When the operator inputs the file name of the user code file in the text box 24 and clicks the generation button 23 after the license key creation screen 20 is entered in this way, the CP
U11 generates a character string of the user code and a character string of the license key obtained by performing an encryption process on the character string of the user code by a predetermined logic (in the example described above, ten license keys are generated). , All data is stored in the user code file having the file name shown in the text box 24.

【0039】図3に、ユーザコードファイルに格納され
るデータの一例を示す。この図3に示されるように、ユ
ーザコードファイルでは、ユーザコードとそれに基づく
ライセンスキーとを同一行に記述することによってユー
ザコードとライセンスキーとを対応付けた状態で、全ユ
ーザコードと全ライセンスキーとが保存されている。
FIG. 3 shows an example of data stored in the user code file. As shown in FIG. 3, in the user code file, the user code and the license key based on the user code are described on the same line so that the user code and the license key are associated with each other. And have been saved.

【0040】そして、コンピュータ10のCPU11
は、このようなユーザコードファイルを生成した後、ラ
イセンスキー生成処理を終了する。
The CPU 11 of the computer 10
After generating such a user code file, the license key generation process ends.

【0041】次に、このコンピュータ10が実行する合
成処理について説明する。なお、HDD13内のOSプ
ログラムを読み出して実行したCPU11が、HDD1
3内の合成プログラムを読み出して実行することによ
り、このコンピュータ10は、合成処理を行うことがで
きるようになる。この合成処理は、詳しくは後述する
が、要するに、HDD13に格納されている不正使用防
止プログラムにライセンスキーを組み込むとともに、ラ
イセンスキーが組み込まれた不正使用防止プログラム
(実行形式)とアプリケーションプログラム(実行形
式)とを合成し、ライセンスキーを有する合成済アプリ
(実行形式)を生成するというものである。図4に、そ
の合成処理の内容をフローチャートにて示す。ここで、
合成前のアプリケーションプログラムは、その内容がバ
イナリ等の実行形式で記述されているものであり、事前
にコンピュータ10のHDD13に格納されているもの
とする。
Next, the synthesizing process executed by the computer 10 will be described. Note that the CPU 11 that has read and executed the OS program in the HDD 13
By reading and executing the combining program in the computer 3, the computer 10 can perform the combining process. The compositing process will be described in detail later. In short, the license key is incorporated in the unauthorized use prevention program stored in the HDD 13, and the unauthorized use prevention program (executable form) incorporating the license key and the application program (executable form) ) Are combined to generate a combined application (executable form) having a license key. FIG. 4 is a flowchart showing the content of the synthesizing process. here,
The content of the application program before synthesis is described in an executable form such as a binary, and is stored in the HDD 13 of the computer 10 in advance.

【0042】この図4に示されるように、合成処理の開
始後、CPU11は、初期設定を認識した後、メイン画
面をディスプレイに表示させる(ステップS101)。
なお、図5に、ディスプレイに表示されるメイン画面の
一例を示す。この図5に示されように、メイン画面30
は、上述したユーザコードファイルのファイル名を操作
者が入力するためのテキストボックス31と、不正使用
防止機能が追加されるアプリケーションプログラムのフ
ァイル名を入力するためのテキストボックス32とが示
される画面である。また、このメイン画面30には、不
正使用防止プログラムと当該アプリケーションプログラ
ムとの合成を行う際に操作者がクリックすべき実行ボタ
ン33や、不正使用防止機能の各種設定(合成済アプリ
の実行開始後にエンドユーザに対してライセンスキーを
入力させるためのダイアログボックスを表示させるかど
うかの設定など、詳しくは後述する)の変更を行う際に
操作者がクリックすべき詳細設定ボタン34も、示され
ている。
As shown in FIG. 4, after starting the synthesizing process, the CPU 11 recognizes the initial setting, and displays the main screen on the display (step S101).
FIG. 5 shows an example of a main screen displayed on the display. As shown in FIG.
Is a screen showing a text box 31 for the operator to input the file name of the above-mentioned user code file and a text box 32 for inputting the file name of the application program to which the unauthorized use prevention function is added. is there. The main screen 30 also includes an execution button 33 that the operator must click when synthesizing the unauthorized use prevention program and the application program, and various settings of the unauthorized use prevention function (after the execution of the synthesized application is started). A detailed setting button 34 that the operator must click when making a change (described later in detail, such as setting whether to display a dialog box for allowing the end user to input a license key) is also shown. .

【0043】このようなメイン画面30の表示後、CP
U11は、実行ボタン33又は詳細設定ボタン34がク
リックされるのを待機する(ステップS102)。その
後、詳細設定ボタン34がクリックされた場合(ステッ
プS102;詳細設定ボタンクリック)、CPU11
は、ディスプレイに詳細設定画面を表示させて所定の入
力がなされるのを待機する(ステップS103)。
After the main screen 30 is displayed, the CP
U11 waits for the execution button 33 or the detailed setting button 34 to be clicked (step S102). Thereafter, when the detailed setting button 34 is clicked (step S102; clicking the detailed setting button), the CPU 11
Displays a detailed setting screen on the display and waits for a predetermined input (step S103).

【0044】図6に、コンピュータ10のディスプレイ
に表示される詳細設定画面の一例を示す。この図6に示
されるように、詳細設定画面40は、合成済アプリがエ
ンドユーザのコンピュータに実行された際にその合成済
アプリの不正使用防止プログラム部分によって行われる
処理の一部の設定を変更したり、その処理においてディ
スプレイに表示されるメッセージを変更するための画面
である。
FIG. 6 shows an example of the detailed setting screen displayed on the display of the computer 10. As shown in FIG. 6, the detailed setting screen 40 is used to change a part of the processing performed by the unauthorized use prevention program portion of the synthesized application when the synthesized application is executed on the end user's computer. And a screen for changing a message displayed on the display in the processing.

【0045】この詳細設定画面40の概要を説明する
と、この詳細設定画面40には、合成済アプリがエンド
ユーザのコンピュータに実行された際にライセンスキー
を入力するためのダイアログボックスを表示させるか否
かを設定するためのチェックボックス41や、このダイ
アログボックスを表示する時期(「初回のみ表示」や
「毎回表示」等)を設定するためのテキストボックス4
4aが示されているとともに、ダイアログボックスが表
示された時や,そのダイアログボックスにおけるライセ
ンスキーの入力にエラーであった時や,そのライセンス
キーの有効期限が切れている時にディスプレイに表示さ
せるメッセージを入力するためのテキストボックス44
b〜44dが、示されている。
An outline of the detailed setting screen 40 will be described. The detailed setting screen 40 displays whether or not to display a dialog box for inputting a license key when the synthesized application is executed on the end user's computer. And a text box 4 for setting the time of displaying this dialog box (such as “display only for the first time” or “display every time”).
4a is displayed, and a message to be displayed on the display when a dialog box is displayed, when there is an error in inputting a license key in the dialog box, or when the license key has expired. Text box 44 for input
b to 44d are shown.

【0046】また、この詳細設定画面40には、エンド
ユーザのコンピュータがLANを介して他の端末装置と
接続されている場合において、そのコンピュータが合成
済アプリを実行中に、その合成済アプリの不正使用防止
プログラム部分に組み込まれているライセンスキーと同
じライセンスキーを有する合成済アプリがLAN上の他
の端末装置で実行されていることをそのコンピュータに
チェックさせるか否かを設定するためのチェックボック
ス42が、示されているとともに、そのチェックを行わ
せる周期を入力するためのテキストボックス45aや、
同一のライセンスキーを有する合成済アプリがLAN上
の他の端末装置で実行されていた時にディスプレイに表
示させるエラーメッセージを入力するためのテキストボ
ックス45bが、示されている。
Further, when the end user's computer is connected to another terminal device via the LAN, the detailed setting screen 40 shows that the computer of the end user is executing the synthesized application. A check for setting whether or not the computer checks that a synthesized application having the same license key as the license key incorporated in the unauthorized use prevention program is being executed on another terminal device on the LAN. A box 42 is shown, and a text box 45a for inputting a cycle for performing the check,
A text box 45b for inputting an error message to be displayed on the display when a combined application having the same license key is being executed on another terminal device on the LAN is shown.

【0047】さらに、この詳細設定画面40には、CD
−ROMディスク(又はフロッピィディスク)内の合成
済アプリがCD−ROMドライブ56(又はFDD5
5)以外で起動されることを有効にするか否かを切り替
えるためのチェックボックス43が、示されているとと
もに、エンドユーザのコンピュータのレジストリにおけ
るライセンスキーを格納する位置などを指定するための
テキストボックス46a〜46cが、示されている。
Further, the detailed setting screen 40 includes a CD
-The combined application in the ROM disk (or floppy disk) is stored in the CD-ROM drive 56 (or FDD5).
5) A check box 43 for switching whether to enable activation other than the above is shown, and text for designating a location in the registry of the end user's computer where the license key is stored, and the like. Boxes 46a-46c are shown.

【0048】このような詳細設定画面40の表示後、閉
じるボタン47がクリックされると、CPU11は、そ
の時点で各チェックボックス41〜43や,テキストボ
ックス44a〜44c,45a,45b,46a〜46
cに入力されている設定及びメッセージを認識し、ステ
ップS102の処理に戻る。
When the close button 47 is clicked after such a detailed setting screen 40 is displayed, the CPU 11 causes the check boxes 41 to 43 and the text boxes 44a to 44c, 45a, 45b, 46a to 46 at that time.
Recognize the setting and the message input to c, and return to the processing of step S102.

【0049】一方、ステップS102の処理において、
実行ボタン33がクリックされた場合(ステップS10
2;実行ボタンクリック)、CPU11は、メイン画面
30のテキストボックス31に示されるファイル名のユ
ーザコードファイルからライセンスキーを1個読み出し
て認識する(ステップS104)。そして、CPU11
は、HDD13に格納されている不正使用防止プログラ
ムを読み出し、ステップS104の処理において認識し
たライセンスキーをこの不正使用防止プログラム内の所
定の位置に組み込み(ステップS105)、この不正使
用防止プログラム内の所定の位置に、この時点で認識さ
れている設定(ダイアログボックスの表示/非表示な
ど)やメッセージを組み込み、この不正使用防止プログ
ラムを別のファイル名にてHDD13に格納する(ステ
ップS106)。なお、このステップS106処理にお
いて、ライセンスキーや設定などが組み込まれた不正使
用防止プログラムを別のファイル名でHDD13に格納
するのは、元の不正使用防止プログラムを雛形として保
存しておくためである。
On the other hand, in the process of step S102,
When the execution button 33 is clicked (step S10
2; execution button click), the CPU 11 reads and recognizes one license key from the user code file having the file name shown in the text box 31 of the main screen 30 (step S104). And the CPU 11
Reads out the unauthorized use prevention program stored in the HDD 13, incorporates the license key recognized in the processing of step S104 into a predetermined position in the unauthorized use prevention program (step S105), Then, the settings (display / non-display of the dialog box, etc.) and the message recognized at this point are incorporated in the position, and the unauthorized use prevention program is stored in the HDD 13 with a different file name (step S106). In the process of step S106, the unauthorized use prevention program in which the license key and the settings are incorporated is stored in the HDD 13 with a different file name in order to store the original unauthorized use prevention program as a template. .

【0050】その後、CPU11は、OSプログラムの
内部コマンドであってファイルを合成して複製するため
のコマンド(例えばオペレーティングシステムがMS−
DOS(マイクロソフト社の登録商標)であれば“CO
PY”コマンド)を生成する(ステップS107)。こ
のとき生成されるコマンドにおいて、複製する対象のフ
ァイル名などを記述すべきパラメータの部分には、ステ
ップS106の処理でHDD13に格納された不正使用
防止プログラムのファイル名と,メイン画面30のテキ
ストボックス31に示されるアプリケーションプログラ
ムのファイル名とが、この順で記述される。これによ
り、このコマンドの実行後に生成される合成済アプリ
(実行形式)は、不正使用防止プログラム(実行形式)
の内容の末尾にアプリケーションプログラム(実行形
式)の内容が記述された内容となる。従って、この合成
済アプリ(実行形式)による処理では、先に不正使用防
止プログラム部分の内容が実行される。また、このステ
ップS107の処理において生成されるコマンドにおい
て、複製後のプログラムに付されるファイル名を記述す
べきパラメータの部分には、合成前のアプリケーション
プログラムのファイル名と同じファイル名が記述され
る。従って、このコマンド実行後に生成される合成済ア
プリがエンドユーザのコンピュータに格納されている時
には、そのコンピュータのディスプレイに表示される合
成済アプリのファイル名を見ただけでは、アプリケーシ
ョンプログラムに不正使用防止プログラムが合成されて
いるか否かが区別できないようになっている。
Thereafter, the CPU 11 issues a command for synthesizing and copying a file (for example, when the operating system is MS-
For DOS (registered trademark of Microsoft Corporation), "CO
PY "command) (step S107). In the command generated at this time, the portion of the parameter in which the name of the file to be copied and the like should be described is stored in the HDD 13 in the processing of step S106 to prevent unauthorized use. The file name of the program and the file name of the application program shown in the text box 31 of the main screen 30 are described in this order, whereby the synthesized application (executable form) generated after execution of this command is , Unauthorized use prevention program (executable form)
Is the content in which the content of the application program (executable form) is described at the end of the content. Therefore, in the processing by the combined application (executable form), the contents of the unauthorized use prevention program portion are executed first. In the command generated in the process of step S107, the same file name as the file name of the application program before synthesis is described in the parameter portion in which the file name to be added to the copied program is to be described. . Therefore, when the synthesized application generated after executing this command is stored in the end user's computer, unauthorized use of the application program can be prevented simply by looking at the file name of the synthesized application displayed on the display of the computer. It is not possible to distinguish whether or not the program is synthesized.

【0051】そして、CPU11は、ステップS107
の処理において生成されたコマンドを実行して、バイナ
リ等の実行形式で記述された合成済アプリを生成(ステ
ップS108)し、その合成済アプリをHDD13に格
納する(ステップS109)。その後、CPU11は、
メイン画面30のテキストボックス31に示されるファ
イル名のユーザコードファイルに次のライセンスキーが
あるか否かをチェックする(ステップS110)。そし
て、次のライセンスキーがあった場合(ステップS11
0;YES)、CPU11は、ステップS104の処理
に戻り、そのライセンスキーを読み出して認識する。一
方、次のライセンスキーがなかった場合(ステップS1
10;NO)、CPU11は、合成処理を終了する。
Then, the CPU 11 determines in step S107
By executing the command generated in the process (1), a combined application described in an execution format such as a binary is generated (step S108), and the combined application is stored in the HDD 13 (step S109). After that, the CPU 11
It is checked whether the next license key exists in the user code file having the file name indicated in the text box 31 on the main screen 30 (step S110). Then, when there is the next license key (step S11)
0; YES), the CPU 11 returns to the process of step S104, reads out and recognizes the license key. On the other hand, if there is no next license key (step S1)
10; NO), the CPU 11 ends the combining process.

【0052】なお、上記の合成処理においてステップS
104〜S110の処理ループが、ユーザコードファイ
ル内のライセンスキーの個数と同じ回数だけ繰り返さ
れ、ライセンスキーを有する合成済アプリがその個数分
だけ生成される。
It should be noted that in the above synthesizing process, step S
The processing loop from 104 to S110 is repeated the same number of times as the number of license keys in the user code file, and the number of synthesized applications having the license keys is generated.

【0053】このコンピュータ10の操作者(上述した
ソフトウエア制作業者やその販売業者など)は、このよ
うな合成処理をコンピュータ10に実行させることによ
って生成された合成済アプリを、エンドユーザに提供す
ることができるようになる。なお、その提供方法として
は、例えば、上記の合成処理によってHDD13に格納
された複数の合成済アプリを、フロッピィディスクの一
枚一枚に記録したり、コンピュータ10に接続された専
用の装置を用いて空のCD−ROMディスクの一枚一枚
に記録することにより、このようにして製造された複数
のフロッピィディスクやCD−ROMディスクをエンド
ユーザに提供する方法がある。また、別の方法として
は、コンピュータ10をインターネットに接続し、合成
済アプリをこのコンピュータ10からダウンロード可能
とすることによってエンドユーザに提供する方法もあ
る。但し、何れの方法によってエンドユーザに合成済ア
プリを提供(販売)する場合でも、その提供者(販売
者)は、合成済アプリの譲受者(購入者)に対し、提供
されている合成済アプリに設定されているライセンスキ
ーを、通知する必要がある。
The operator of the computer 10 (such as the above-described software creator and its distributor) provides the end user with a synthesized application generated by causing the computer 10 to execute such synthesis processing. Will be able to do it. In addition, as a providing method, for example, a plurality of synthesized applications stored in the HDD 13 by the above-described synthesizing process are recorded on each floppy disk, or a dedicated device connected to the computer 10 is used. There is a method of providing a plurality of floppy disks and CD-ROM disks manufactured as described above to an end user by recording each blank CD-ROM disk one by one. As another method, there is a method of connecting the computer 10 to the Internet and providing the synthesized application to the end user by making it downloadable from the computer 10. However, in any case of providing (selling) the synthesized application to the end user by any method, the provider (seller) provides the transferor (purchaser) of the synthesized application with the provided synthesized application. It is necessary to notify the license key set in.

【0054】そして、エンドユーザは、自己が使用する
コンピュータのCD−ROMドライブ等にCD−ROM
ディスク等をセットしてCD−ROMドライブから読み
出させることにより、或いは、自己が使用するコンピュ
ータにインターネット上のコンピュータからダウンロー
ドすることにより、自己のコンピュータに合成済アプリ
をインストールすることができる。
Then, the end user inserts the CD-ROM into the CD-ROM drive or the like of the computer used by the end user.
By setting a disk or the like and reading it from the CD-ROM drive, or by downloading it from a computer on the Internet to a computer used by the user, the synthesized application can be installed on the user's computer.

【0055】なお、エンドユーザが使用するコンピュー
タとしては、キーボードやマウス等の入力装置と各種画
面を表示するディスプレイと本体とを備えた一般に市販
されているコンピュータを用いることができる。その本
体の内部回路は、図7の概略構成図に示されるように、
CPU51,RAM52,通信制御回路53,ハードデ
ィスクドライブ(HDD)54,フロッピーディスクド
ライブ(FDD)55,CD−ROMドライブ56等の
ハードウエアを、主要な構成としている。そのうちの通
信制御回路53は、LANケーブルを介して他の端末装
置に接続されたLANボードであり、LAN上の他の端
末装置との間でのデータやパラメータの受け渡しを司
る。また、その他のハードウエアについては、図1に示
されるコンピュータ10と同じ構成であるので、説明を
省略する。
As a computer used by the end user, a generally available computer having an input device such as a keyboard and a mouse, a display for displaying various screens, and a main body can be used. The internal circuit of the main body, as shown in the schematic configuration diagram of FIG.
Main components are hardware such as a CPU 51, a RAM 52, a communication control circuit 53, a hard disk drive (HDD) 54, a floppy disk drive (FDD) 55, and a CD-ROM drive 56. The communication control circuit 53 is a LAN board connected to another terminal device via a LAN cable, and controls exchange of data and parameters with another terminal device on the LAN. The other hardware has the same configuration as the computer 10 shown in FIG.

【0056】次に、コンピュータ50のHDD54に格
納された合成済アプリがコンピュータ50のCPU51
によって実行される時の処理の手順、特に、合成済アプ
リのうちの不正使用防止プログラム部分による処理の手
順について、図8のフローチャートを用いて説明する。
Next, the synthesized application stored in the HDD 54 of the computer 50 is transmitted to the CPU 51 of the computer 50.
The procedure of the process executed by the application, in particular, the procedure of the process by the unauthorized use prevention program portion of the synthesized application will be described with reference to the flowchart of FIG.

【0057】この図8に示されるように、コンピュータ
50のCPU51は、HDD54から合成済アプリを読
み出してその実行を開始した後、レジストリ内の所定位
置にライセンスキーの文字列が格納されているか否かを
チェックする(ステップS201)。レジストリ内の所
定位置にライセンスキーの文字列が格納されていた場合
(ステップS201;YES)、CPU51は、そのラ
イセンスキーの文字列を認識する。一方、レジストリ内
の所定位置にライセンスキーの文字列が格納されていな
かった場合(ステップS201;NO)、CPU51
は、ライセンスキーを入力するためのダイアログボック
スをディスプレイに表示させ、図示せぬOKボタンがク
リックされるのを待機(ステップS202)し、図示せ
ぬOKボタンがクリックされると、ダイアログボックス
に入力されている文字列をライセンスキーとして認識す
る。
As shown in FIG. 8, the CPU 51 of the computer 50 reads out the combined application from the HDD 54 and starts executing the combined application, and then determines whether or not the character string of the license key is stored at a predetermined position in the registry. Is checked (step S201). When the license key character string is stored at a predetermined position in the registry (step S201; YES), the CPU 51 recognizes the license key character string. On the other hand, if the character string of the license key is not stored at a predetermined position in the registry (step S201; NO), the CPU 51
Displays a dialog box for inputting a license key on the display, waits for an OK button (not shown) to be clicked (step S202), and when the OK button (not shown) is clicked, enters the dialog box. The recognized character string is recognized as a license key.

【0058】そして、この時点でライセンスキーとして
認識している文字列が、合成済アプリの不正使用防止プ
ログラム部分に組み込まれているライセンスキーの文字
列に一致するか否かを、チェックする(ステップS20
3)。合成済アプリ内のライセンスキーの文字列と一致
しなかった場合(ステップS203;NO)、CPU5
1は、ステップS202の処理に戻り、ダイアログボッ
クスをディスプレイに表示させる。また、合成済アプリ
内のライセンスキーの文字列と一致した場合(ステップ
S203;YES)、CPU51は、そのライセンスキ
ーをレジストリの所定位置に記録(ステップS204)
し、そのライセンスキーをLAN内にブロードキャスト
して全ての端末装置に通知する(ステップS205)。
なお、このステップS205の処理において、CPU5
1は、ライセンスキーをブロードキャストする前に、ラ
イセンスキーを復号化することによってユーザコードを
生成して使用期限(図2のライセンスキー作成画面20
における使用期限欄を参照)が設定されているか否かを
チェックし、また、使用期限が設定されている場合には
使用期限に達しているか否かをチェックし、使用期限が
過ぎていたときにはその旨(図6の詳細設定画面40の
テキストボックス44dを参照)をディスプレイに表示
して本処理を終了する処理も、行う。
Then, it is checked whether or not the character string recognized as the license key at this time matches the character string of the license key incorporated in the unauthorized use prevention program portion of the synthesized application (step S1). S20
3). If it does not match the character string of the license key in the synthesized application (step S203; NO), the CPU 5
1 returns to the process of step S202 and causes a dialog box to be displayed on the display. If the license key matches the character string of the license key in the combined application (step S203; YES), the CPU 51 records the license key at a predetermined position in the registry (step S204).
Then, the license key is broadcast in the LAN to notify all the terminal devices (step S205).
Note that, in the process of step S205, the CPU 5
Before the license key is broadcast, the license key is decrypted to generate a user code and the expiration date (the license key creation screen 20 in FIG. 2).
Check if the expiration date has been set, and if the expiration date has been set, check if the expiration date has been reached. A message to the effect (see the text box 44d of the detailed setting screen 40 in FIG. 6) is displayed on the display, and the process of ending this process is also performed.

【0059】そして、CPU51は、次のステップS2
06において、何れかの端末装置から自己のものと同じ
ライセンスキーを通知されたか否かをチェックする。そ
して、同じライセンスキーを通知された場合(ステップ
S206;YES)、ディスプレイに警告(図6の詳細
設定画面40のテキストボックス45bを参照)を示す
画面を表示(ステップS207)して、この処理を終了
する。一方、自己のものと同じライセンスキーを通知さ
れなかった場合(ステップS206;NO)、CPU5
1は、合成済アプリを複製し、複製された合成済アプリ
のうちの元のアプリケーションプログラム部分を切り出
し、その切り出されたアプリケーションプログラム部分
の処理を開始する(ステップS208)。なお、このア
プリケーションプログラム部分による処理は、本処理と
並行に実行される。
Then, the CPU 51 determines in the next step S2
At 06, it is checked whether or not any terminal device has notified the same license key as its own. When the same license key is notified (step S206; YES), a screen showing a warning (see the text box 45b of the detailed setting screen 40 in FIG. 6) is displayed on the display (step S207), and this processing is performed. finish. On the other hand, when the same license key as that of its own is not notified (step S206; NO), the CPU 5
1 duplicates the synthesized application, cuts out the original application program portion of the copied synthesized application, and starts processing the cut-out application program portion (step S208). The processing by the application program portion is executed in parallel with the present processing.

【0060】次に、CPU51は、ステップS209〜
S211のループ処理を実行する。このループ処理に入
って最初のステップS209では、CPU51は、ステ
ップS208にて実行を開始したアプリケーションプロ
グラム部分の処理が継続しているか否かをチェックす
る。そして、アプリケーションプログラム部分の処理が
実行中であった場合(ステップS209;YES)、C
PU51は、ステップS210において、LAN内の全
ての端末装置に対し、レジストリの所定位置に記録され
ているライセンスキーをブロードキャストで通知する。
次のステップS211の処理では、CPU51は、レジ
ストリ内のライセンスキーと同じライセンスキーを何れ
かの他の端末装置から通知されたか否かをチェックす
る。そして、レジストリ内のライセンスキーと同じライ
センスキーを何れかの端末装置から通知されていない場
合(ステップS211;NO)、CPU51は、処理を
ステップS209に戻す。
Next, the CPU 51 proceeds to steps S209 to S209.
The loop processing of S211 is executed. In the first step S209 after entering the loop processing, the CPU 51 checks whether or not the processing of the application program portion started to be executed in the step S208 is continued. If the processing of the application program portion is being executed (step S209; YES), C
In step S210, the PU 51 broadcasts a license key recorded at a predetermined position in the registry to all terminal devices in the LAN.
In the process of the next step S211, the CPU 51 checks whether the license key same as the license key in the registry has been notified from any other terminal device. Then, when the same license key as the license key in the registry has not been notified from any of the terminal devices (step S211; NO), the CPU 51 returns the process to step S209.

【0061】以上のステップS209〜S211のルー
プ処理を繰り返している間に、レジストリ内のライセン
スキーと同じライセンスキーを何れかの他の端末装置か
ら通知された場合(ステップS211;YES)、CP
U51は、処理をステップS211からS212に進
め、ライセンスキーを送信してきた端末装置に対してレ
ジストリ内のライセンスキーを送信する。そして、次の
ステップS213の処理において、CPU51は、ディ
スプレイに警告(図6の詳細設定画面40のテキストボ
ックス45b参照)を示す画面を表示する。続いて、次
のステップS214の処理において、CPU51は、切
り出されたアプリケーションプログラム部分の処理を強
制終了するとともにそのアプリケーションプログラム部
分のファイルを削除し、本処理を終了する。
If the same license key as the license key in the registry is notified from any other terminal device while repeating the loop processing of steps S209 to S211 (step S211; YES), the CP
U51 advances the process from step S211 to S212, and transmits the license key in the registry to the terminal device that has transmitted the license key. Then, in the processing of the next step S213, the CPU 51 displays a screen showing a warning (see the text box 45b of the detailed setting screen 40 in FIG. 6) on the display. Subsequently, in the processing of the next step S214, the CPU 51 forcibly terminates the processing of the cut-out application program part, deletes the file of the application program part, and ends this processing.

【0062】一方、上記ステップS209〜S211の
ループ処理を繰り返している間に、アプリケーションプ
ログラム部分の処理が終了していることを検出した場
合、CPU51は、処理をステップS209からS21
5へ進め、切り出されて元のアプリケーションプログラ
ム部分のみの内容となっているプログラムのファイルを
削除した後に、本処理を終了する。
On the other hand, if the CPU 51 detects that the processing of the application program has been completed while repeating the loop processing of steps S209 to S211, the CPU 51 executes the processing in steps S209 to S21.
The process proceeds to step S5, and after deleting the file of the program that has been cut out and has only the contents of the original application program portion, the present process is terminated.

【0063】なお、上記のステップS209〜S211
の処理は、図4に示す合成処理において合成済アプリが
生成された際に詳細設定画面40のチェックボックス4
2にチェックマークが入力されていなかった場合には行
われず、ステップS208のチェック結果がYESであ
る限り、ステップS208のチェックが繰り返される。
Note that the above steps S209 to S211
Is performed when the combined application is generated in the combining processing shown in FIG.
If the check mark is not input to No. 2, the check is not performed, and the check in step S208 is repeated as long as the check result in step S208 is YES.

【0064】また、上記のステップS202の処理は、
図4に示す合成処理において合成済アプリが生成された
際に詳細設定画面40のチェックボックス41にチェッ
クマークが入力されていなかった場合には、行われな
い。この場合、レジストリ内の所定位置にライセンスキ
ーを記録する処理は、インストール時に行われるととも
に、ステップS203の処理においてライセンスキーが
一致しなかった場合(ステップS203;NO)には、
本処理を終了するという処理がCPU51によって行わ
れる。ところで、合成済アプリの生成時にチェックボッ
クス41にチェックマークが入力されていたとしても、
テキストボックス44aに「初回のみ表示」と設定され
ていたときには、この合成済アプリがコンピュータ50
にインストールされた後に初めて実行されるときのみ、
ステップS202が行われる。但し、その実行が2回目
以後である場合においては、ステップS203の処理に
てライセンスキーが一致しなかったとき(ステップS2
03;NO)には、本処理を終了するという処理がCP
U51によって行われる。
The processing in step S202 is
If the check mark is not input to the check box 41 of the detailed setting screen 40 when the combined application is generated in the combining processing illustrated in FIG. 4, the processing is not performed. In this case, the process of recording the license key at a predetermined position in the registry is performed at the time of installation, and if the license keys do not match in the process of step S203 (step S203; NO),
The processing of ending this processing is performed by the CPU 51. By the way, even if a check mark is entered in the check box 41 when the synthesized application is generated,
When “display only for the first time” is set in the text box 44a, the synthesized application is
Only when it is run for the first time after being installed on
Step S202 is performed. However, if the license key does not match in the processing of step S203 if the execution is the second time or later (step S2).
03; NO), the process of terminating the present process is a CP
This is performed by U51.

【0065】このような処理がエンドユーザのコンピュ
ータ50で行われるために、合成済アプリを利用しよう
とするエンドユーザは、アプリケーションプログラム部
分による処理が実行される前に、正確なライセンスキー
を入力せねばならず、また、正確なライセンスキーを入
力できたとしても、LAN上の他の端末装置で同じライ
センスキーを有する合成済アプリが使用されていた場合
には、アプリケーションプログラムを利用することがで
きなくなる。従って、このような合成済アプリをエンド
ユーザに提供すれば、その合成済アプリと同じライセン
スキーを有する合成済アプリが同じLAN上の他の端末
装置で実行されることを防ぐことができる。
Since such processing is performed by the end user's computer 50, the end user who intends to use the synthesized application inputs an accurate license key before the processing by the application program portion is executed. Must be entered, and even if the correct license key can be input, if another terminal device on the LAN uses a synthesized application having the same license key, the application program can be used. Disappears. Therefore, if such a combined application is provided to the end user, the combined application having the same license key as the combined application can be prevented from being executed by another terminal device on the same LAN.

【0066】以上に示したように、完成品のアプリケー
ションプログラムをエンドユーザに提供しようとする者
にとっては、ライセンスキー生成プログラムと合成プロ
グラムと不正使用防止プログラムとを利用することによ
って、そのアプリケーションプログラムのソースプログ
ラムを改造することなく簡単に、実行形式で記述された
アプリケーションプログラムに不正使用防止機能を追加
することができる。
As described above, a person who intends to provide a finished product application program to an end user can use the license key generation program, the synthesizing program, and the unauthorized use prevention program to obtain the application program. An unauthorized use prevention function can be easily added to an application program described in an executable format without modifying the source program.

【0067】また、ライセンスキー生成プログラムと合
成プログラムと不正使用防止プログラムは、CD−RO
Mディスク等の記憶媒体に格納することによって他者に
提供可能であるので、ソフトウエア制作業者やその販売
業者などの他、不正使用防止機能をアプリケーションプ
ログラムに追加したいのにソースプログラムを入手でき
ないで困っている者やプログラミングの知識が無い者に
でも簡単に、実行形式のアプリケーションプログラムに
不正使用防止機能を追加することができる。
The license key generating program, the synthesizing program, and the unauthorized use preventing program are provided on a CD-RO.
Since it can be provided to others by storing it in a storage medium such as an M disk, it is necessary to add a software creator or its distributor, and to obtain an unauthorized use prevention function to an application program but not obtain a source program. Even those who are in trouble or have no programming knowledge can easily add an unauthorized use prevention function to the application program of the executable form.

【0068】[0068]

【変形例】ところで、アプリケーションプログラムをC
D−ROMディスク等の記憶媒体に格納した状態でエン
ドユーザに提供する際、そのCD−ROMディスク等に
はアプリケーションプログラムをインストールするため
のインストーラも格納しておくのが一般的であるが、本
実施形態においては、上述した合成プログラムや不正使
用防止プログラムを利用して、このインストーラに不正
使用防止機能を追加しておくこともできる(以下、不正
使用防止プログラムを合成したインストーラを、合成済
インストーラという)。このようにインストーラに不正
使用防止機能を追加しておけば、インストール実行中に
おいて、合成済アプリがLAN内の他の端末装置で不正
に使用されるのを防ぐことができ、更に、このインスト
ーラによってコンピュータ50に合成済アプリがインス
トールされることを防ぐこともできる。但し、合成済イ
ンストーラと合成済アプリとに付加されるライセンスキ
ーは、同じものにしておかねばならない。
[Modification] By the way, if the application program is C
When providing to an end user in a state of being stored in a storage medium such as a D-ROM disk, it is general that the CD-ROM disk or the like also stores an installer for installing an application program. In the embodiment, an unauthorized use prevention function can be added to this installer by using the above-described combining program or unauthorized use prevention program (hereinafter, an installer obtained by combining the unauthorized use prevention program with a combined installer ). By adding the unauthorized use prevention function to the installer in this way, it is possible to prevent the synthesized application from being used illegally by another terminal device in the LAN during the execution of the installation. It is also possible to prevent the synthesized application from being installed in the computer 50. However, the license key added to the combined installer and the combined application must be the same.

【0069】以下、コンピュータ50によってCD−R
OMディスクから合成済インストーラが読み出されてそ
の実行が開始されたときの処理の内容を、図9に示す。
なお、この図9に示されるステップS301〜S303
は、図8に示されるステップS201〜S203に夫々
対応しており、ともに同じ処理が行われるので、説明を
省略する。
Hereinafter, the CD-R is read by the computer 50.
FIG. 9 shows the contents of the processing when the combined installer is read from the OM disk and its execution is started.
Steps S301 to S303 shown in FIG.
Correspond to steps S201 to S203 shown in FIG. 8 respectively, and the same processing is performed.

【0070】CPU51は、ステップS303におい
て、この時点で認識している文字列と合成済インストー
ラ内のライセンスキーの文字列とが一致していた場合
(ステップS303;YES)、レジストリ内の所定位
置にそのライセンスキーを記録する(ステップS30
4)。そして、CPU51は、そのライセンスキーをL
AN内にブロードキャストして全ての端末装置に通知
(ステップS305)し、レジストリ内の所定位置に記
録されているライセンスキーと同じライセンスキーを何
れかの他の端末装置から通知されたか否かをチェックす
る(ステップ306)。
If the character string recognized at this time matches the character string of the license key in the combined installer in step S303 (step S303; YES), the CPU 51 moves the character string to a predetermined position in the registry. The license key is recorded (step S30)
4). Then, the CPU 51 sets the license key to L
Broadcast in the AN and notify all terminal devices (step S305), and check whether any other terminal device has notified the same license key as the license key recorded at a predetermined position in the registry. (Step 306).

【0071】そして、レジストリ内のライセンスキーと
同じライセンスキーを何れかの他の端末装置から通知さ
れた場合(ステップS306;YES)、CPU51
は、ディスプレイに警告を示す画面を表示(ステップS
307)して、この処理を終了する。一方、レジストリ
内のライセンスキーと同じライセンスキーを何れの他の
端末装置から通知されていない場合(ステップS30
6;NO)、CPU51は、合成済インストーラを複製
し、複製された合成済インストーラのうちの元のインス
トーラ部分を切り出し、その切り出されたインストーラ
部分の処理を実行する(ステップS308)。なお、こ
のインストーラ部分による処理は、本処理と並行に実行
され、合成済アプリがCD−ROMディスクからHDD
54にインストールされる。また、図9には図示してい
ないが、このインストーラ部分の処理の実行中には、図
8に示すステップS209〜S211のループ処理が行
われ、レジストリ内のライセンスキーと同じライセンス
キーを何れかの他の端末装置から通知された場合、CP
U51は、レジストリ内のライセンスキーを送信元に通
知し、インストーラ部分の処理を強制終了し、インスト
ーラ部分を削除する。その一方で、レジストリ内のライ
センスキーと同じライセンスキーを何れの端末装置から
も通知されないままインストーラ部分の処理が終了した
場合には、CPU51は、この切り出されて元のインス
トーラのみの内容となっているプログラムのファイルを
削除して本処理を終了する。
When the same license key as the license key in the registry is notified from any other terminal device (step S306; YES), the CPU 51
Displays a warning screen on the display (step S
307), and ends this processing. On the other hand, when the license key same as the license key in the registry has not been notified from any other terminal device (step S30)
6; NO), the CPU 51 copies the combined installer, cuts out the original installer portion of the copied combined installer, and executes the process of the cut-out installer portion (step S308). The processing by the installer is executed in parallel with this processing, and the combined application is stored in the HDD from the CD-ROM disk.
Installed at 54. Although not shown in FIG. 9, during execution of the processing of the installer part, a loop processing of steps S209 to S211 shown in FIG. 8 is performed, and any license key same as the license key in the registry is used. When notified from another terminal device of the
U51 notifies the license key in the registry to the transmission source, forcibly terminates the processing of the installer part, and deletes the installer part. On the other hand, when the processing of the installer part is completed without notifying the license key same as the license key in the registry from any of the terminal devices, the CPU 51 cuts out the content of the original installer only. This process ends after deleting the program file.

【0072】このような処理がエンドユーザのコンピュ
ータ50で行われるために、合成済インストーラにより
アプリケーションプログラムをコンピュータ50のHD
D54等の記憶装置にインストールしようとする者は、
インストーラ部分の処理が開始される前に、正確なライ
センスキーを入力せねばならず、また、正確なライセン
スキーを入力できたとしても、ネットワーク上の他の端
末装置で同じライセンスキーを有する合成済アプリが使
用されていた場合には、そこで切り出されたインストー
ラ部分の処理が全て停止してしまうので、インストール
を続行させることができない。従って、合成済アプリが
格納されるCD−ROMディスク等にこのような合成済
インストーラを一緒に格納しておけば、その合成済イン
ストーラと同じライセンスキーを有する合成済アプリが
LAN上の他の端末装置において実行されている場合
に、このCD−ROMディスク等から合成済アプリがコ
ンピュータ50に不正にインストールされることを防ぐ
ことができる。
Since such processing is performed by the computer 50 of the end user, the application program is transferred to the HD of the computer 50 by the synthesized installer.
If you want to install it on a storage device such as D54,
You must enter the correct license key before the processing of the installer starts, and even if you can enter the correct license key, the other terminal devices on the network will have the same license key If the application has been used, the processing of the installer part cut out there is stopped, so that the installation cannot be continued. Therefore, if such a combined installer is also stored on a CD-ROM disk or the like in which the combined application is stored, the combined application having the same license key as the combined installer can be stored in another terminal on the LAN. When the application is executed in the device, it is possible to prevent the synthesized application from being illegally installed on the computer 50 from the CD-ROM disk or the like.

【0073】(付記1) 実行形式で記述された追加機
能プログラムの内容の末尾に、実行形式で記述された任
意のアプリケーションプログラムの内容を足し合わせる
ことにより、合成済アプリケーションプログラムを生成
するプログラム合成方法であって、前記追加機能プログ
ラムは、コンピュータに対し、所定の機能を実現する処
理を行わせた後、自己を含む合成済アプリケーションプ
ログラムの中から自己以外の部分を複製させ、複製され
た部分に相当するアプリケーションプログラムを実行さ
せ、そのアプリケーションプログラムの実行が終了した
ときにそのアプリケーションプログラムの削除を行わせ
るプログラムであることを特徴とするプログラム合成方
法。
(Supplementary Note 1) A program synthesizing method for generating a synthesized application program by adding the contents of an arbitrary application program described in an executable form to the end of the contents of an additional function program described in an executable form The additional function program causes the computer to perform processing for realizing a predetermined function, and then causes a part other than the self to be copied from the synthesized application program including the self, and causes the copied part to A program synthesizing method, wherein the program is a program for executing a corresponding application program and deleting the application program when the execution of the application program ends.

【0074】(付記2) 実行形式で記述された追加機
能プログラムの内容の末尾に対して実行形式で記述され
た任意のアプリケーションプログラムの内容を足し合わ
せることによって構成される合成済アプリケーションプ
ログラムを、コンピュータに生成させるプログラム合成
プログラムであって、前記追加機能プログラムは、コン
ピュータに対し、所定の機能を実現する処理を行わせた
後、自己を含む合成済アプリケーションプログラムの中
から自己以外の部分を複製させ、複製された部分に相当
するアプリケーションプログラムを実行させ、そのアプ
リケーションプログラムの実行が終了したときにそのア
プリケーションプログラムの削除を行わせるプログラム
であることを特徴とするプログラム合成プログラム。
(Supplementary Note 2) A combined application program formed by adding the contents of an arbitrary application program described in the executable form to the end of the contents of the additional function program described in the executable form is converted into a computer. The additional function program causes the computer to perform processing for realizing a predetermined function, and then causes a part other than the self to be copied from the synthesized application program including the self. A program synthesizing program for executing an application program corresponding to a copied portion and deleting the application program when the execution of the application program is completed.

【0075】(付記3) 実行形式で記述された任意の
アプリケーションプログラムの内容が末尾に足し合わさ
れる追加機能プログラムであって、コンピュータに対
し、所定の機能を実現する処理を行わせた後、自己に足
し合わされているアプリケーションプログラムを複製さ
せ、複製されたアプリケーションプログラムを実行さ
せ、そのアプリケーションプログラムの実行が終了した
ときにその複製されたアプリケーションプログラムの削
除を行わせることを特徴とする追加機能プログラム。
(Supplementary Note 3) This is an additional function program in which the contents of an arbitrary application program described in an executable form are added to the end, and after making a computer perform processing for realizing a predetermined function, An additional function program that causes the application program added to the application program to be duplicated, executes the duplicated application program, and deletes the duplicated application program when the execution of the application program ends.

【0076】(付記4) 実行形式で記述された追加機
能プログラムの内容の末尾に対して実行形式で記述され
た任意のアプリケーションプログラムの内容を足し合わ
せることによって構成される合成済アプリケーションプ
ログラムを、コンピュータに生成させるプログラム合成
プログラムと、コンピュータに対し、所定の機能を実現
する処理を行わせた後、自己を含む合成済アプリケーシ
ョンプログラムの中から自己以外の部分を複製させ、複
製された部分に相当するアプリケーションプログラムを
実行させ、そのアプリケーションプログラムの実行が終
了したときにそのアプリケーションプログラムの削除を
行わせる前記追加機能プログラムとを記録したことを特
徴とするコンピュータ可読媒体。
(Supplementary Note 4) A combined application program formed by adding the content of an arbitrary application program described in the executable format to the end of the content of the additional function program described in the executable format is added to the computer. After causing the computer to perform processing for realizing a predetermined function and causing the computer to perform processing for realizing a predetermined function, a part other than the self is duplicated from the synthesized application program including the self, and corresponds to the duplicated part. A computer-readable medium having recorded thereon an additional function program for executing an application program and deleting the application program when the execution of the application program is completed.

【0077】(付記5) 所定の機能を実現する処理を
コンピュータに行わせるために実行形式で記述された追
加機能プログラムの内容の末尾に対して実行形式で記述
された任意のアプリケーションプログラムの内容を足し
合わせることによって構成される合成済アプリケーショ
ンプログラムであって、コンピュータに対し、前記所定
の機能を実現する処理を行わせた後、その処理の内容を
記述した前記追加機能プログラム以外の部分を複製さ
せ、複製された部分に相当する前記アプリケーションプ
ログラムを実行させ、そのアプリケーションプログラム
の実行が終了したときにその複製されたアプリケーショ
ンプログラムの削除を行わせることを特徴とする合成済
アプリケーションプログラム。
(Supplementary Note 5) The contents of an arbitrary application program described in the execution format are added to the end of the contents of the additional function program described in the execution format to cause the computer to perform a process for realizing the predetermined function. A combined application program configured by adding together, and after causing a computer to perform a process for realizing the predetermined function, causes a computer to copy a portion other than the additional function program describing the content of the process. A combined application program for executing the application program corresponding to the copied portion, and deleting the copied application program when the execution of the application program is completed.

【0078】(付記6) 所定の機能を実現する処理を
コンピュータに行わせるために実行形式で記述された追
加機能プログラムの内容の末尾に対して実行形式で記述
された任意のアプリケーションプログラムの内容を足し
合わせることによって構成される合成済アプリケーショ
ンプログラムを記憶したコンピュータ可読媒体であっ
て、前記合成済アプリケーションプログラムは、コンピ
ュータに対し、前記所定の機能を実現する処理を行わせ
た後、その処理の内容を記述した前記追加機能プログラ
ム以外の部分を複製させ、複製された部分に相当する前
記アプリケーションプログラムを実行させ、そのアプリ
ケーションプログラムの実行が終了したときにその複製
されたアプリケーションプログラムの削除を行わせるこ
とを特徴とする合成済アプリケーションプログラムを記
憶したコンピュータ可読媒体。
(Supplementary Note 6) At the end of the contents of the additional function program described in the executable form, the contents of the arbitrary application program described in the executable form are added to the end of the contents of the additional function program to cause the computer to perform the processing for realizing the predetermined function. A computer-readable medium storing a combined application program configured by adding, wherein the combined application program causes a computer to perform a process of realizing the predetermined function, and then performs a process. And duplicating a part other than the additional function program, executing the application program corresponding to the duplicated part, and deleting the duplicated application program when the execution of the application program ends. Synthesized, characterized by A computer-readable medium storing an application program.

【0079】(付記7) 実行形式で記述された不正使
用防止プログラムの内容の末尾に対して実行形式で記述
された任意のアプリケーションプログラムの内容を足し
合わせることによって構成される合成済アプリケーショ
ンプログラムを、複数生成するとともに、各合成済アプ
リケーションプログラムを相互に識別可能とするための
識別情報を、各合成済アプリケーションプログラムのう
ちの不正使用防止プログラムの部分に夫々付加する不正
使用防止機能追加方法であって、前記不正使用防止プロ
グラムは、LANを介して他の端末装置に接続されてい
るコンピュータに対し、自己に付加されている識別情報
をLAN上の全ての端末装置に向けて定期的に送信さ
せ、LAN上の何れかの端末装置から識別情報が送信さ
れた場合には自己に付加される識別情報と比較させ、そ
れら識別情報同士が一致していない時のみ、自己を含む
合成済アプリケーションプログラムの中から自己以外の
部分を複製させ、その複製された部分に相当するアプリ
ケーションプログラムを実行させ、そのアプリケーショ
ンプログラムの実行が終了した時にその複製されたアプ
リケーションプログラムの削除を行わせるとともに、そ
れら識別情報同士が一致した時には前記複製されたアプ
リケーションプログラムによる処理を強制終了させるプ
ログラムであることを特徴とする不正使用防止機能追加
方法。
(Supplementary Note 7) A combined application program formed by adding the contents of an arbitrary application program described in the executable format to the end of the contents of the unauthorized use prevention program described in the executable format is defined as: A method for adding an unauthorized use prevention function, wherein a plurality of generated application programs are added and identification information for enabling each synthesized application program to be identified mutually is added to an unauthorized use prevention program portion of each synthesized application program. The unauthorized use prevention program causes a computer connected to another terminal device via the LAN to periodically transmit identification information added to itself to all terminal devices on the LAN, When identification information is transmitted from any terminal device on the LAN, Only when the identification information does not match, the part other than the self is copied from the combined application program including the self, and the application program corresponding to the copied part is copied. A program that, when the execution of the application program is completed, deletes the duplicated application program, and forcibly terminates processing by the duplicated application program when the identification information matches each other. A method for adding a feature to prevent unauthorized use.

【0080】(付記8) 実行形式で記述された不正使
用防止プログラムの内容の末尾に対して実行形式で記述
された任意のアプリケーションプログラムの内容を足し
合わせることによって構成される合成済アプリケーショ
ンプログラムを、複数生成するとともに、各合成済アプ
リケーションプログラムを相互に識別可能とするための
識別情報を、各合成済アプリケーションプログラムのう
ちの不正使用防止プログラムの部分に夫々付加する不正
使用防止機能追加方法であって、前記不正使用防止プロ
グラムは、コンピュータに対し、前記識別情報の入力が
あった場合に自己に付加された識別情報と比較させ、そ
の識別情報同士が一致しているときにのみ、自己を含む
合成済アプリケーションプログラムの中から自己以外の
部分を複製させ、その複製された部分に相当するアプリ
ケーションプログラムを実行させ、そのアプリケーショ
ンプログラムの実行が終了した時にその複製されたアプ
リケーションプログラムの削除を行わせるプログラムで
あることを特徴とする不正使用防止機能追加方法。
(Supplementary Note 8) A synthesized application program formed by adding the contents of an arbitrary application program described in the executable format to the end of the contents of the unauthorized use prevention program described in the executable format is defined as A method for adding an unauthorized use prevention function, wherein a plurality of generated application programs are added and identification information for enabling each synthesized application program to be identified mutually is added to an unauthorized use prevention program portion of each synthesized application program. The unauthorized use prevention program causes the computer to compare the identification information with the identification information added to the computer when the identification information is input, and only when the identification information matches each other, Of the application program other than itself from the A method for executing an application program corresponding to a duplicated portion of the program, and deleting the duplicated application program when the execution of the application program is completed.

【0081】(付記9) コンピュータに対し、実行形
式で記述された不正使用防止プログラムの内容の末尾に
対して実行形式で記述された任意のアプリケーションプ
ログラムの内容を足し合わせることによって構成される
合成済アプリケーションプログラムを、複数生成させる
とともに、各合成済アプリケーションプログラムを相互
に識別可能とするための識別情報を、各合成済アプリケ
ーションプログラムのうちの不正使用防止プログラムの
部分に夫々付加させる不正使用防止機能追加プログラム
であって、前記不正使用防止プログラムは、LANを介
して他の端末装置に接続されているコンピュータに対
し、自己に付加されている識別情報をLAN上の全ての
端末装置に向けて定期的に送信させ、LAN上の何れか
の端末装置から識別情報が送信された場合には自己に付
加される識別情報と比較させ、それら識別情報同士が一
致していない時のみ、自己を含む合成済アプリケーショ
ンプログラムの中から自己以外の部分を複製させ、その
複製された部分に相当するアプリケーションプログラム
を実行させ、そのアプリケーションプログラムの実行が
終了した時にその複製されたアプリケーションプログラ
ムの削除を行わせるとともに、それら識別情報同士が一
致した時には前記複製されたアプリケーションプログラ
ムによる処理を強制終了させるプログラムであることを
特徴とする不正使用防止機能追加プログラム。
(Supplementary Note 9) The computer is configured to add the contents of an arbitrary application program described in the executable form to the end of the contents of the unauthorized use prevention program described in the executable form. Addition of an unauthorized use prevention function that generates multiple application programs and adds identification information that enables each synthesized application program to be distinguished from each other to the unauthorized use prevention program portion of each synthesized application program. The unauthorized use prevention program periodically transmits, to a computer connected to another terminal device via a LAN, identification information added to itself to all terminal devices on the LAN. To send the identification information from any terminal device on the LAN. When the information is transmitted, it is compared with the identification information added to the self, and only when the identification information does not match, the part other than the self from the synthesized application program including the self is copied. The application program corresponding to the copied portion is executed, and when the execution of the application program is completed, the copied application program is deleted. When the identification information matches each other, the application program corresponding to the copied application program is deleted. An additional program for preventing unauthorized use, which is a program for forcibly terminating processing.

【0082】(付記10) コンピュータに対し、実行
形式で記述された不正使用防止プログラムの内容の末尾
に対して実行形式で記述された任意のアプリケーション
プログラムの内容を足し合わせることによって構成され
る合成済アプリケーションプログラムを、複数生成させ
るとともに、各合成済アプリケーションプログラムを相
互に識別可能とするための識別情報を、各合成済アプリ
ケーションプログラムのうちの不正使用防止プログラム
の部分に夫々付加させる不正使用防止機能追加プログラ
ムであって、前記不正使用防止プログラムは、コンピュ
ータに対し、前記識別情報の入力があった場合に自己に
付加された識別情報と比較させ、その識別情報同士が一
致しているときにのみ、自己を含む合成済アプリケーシ
ョンプログラムの中から自己以外の部分を複製させ、そ
の複製された部分に相当するアプリケーションプログラ
ムを実行させ、そのアプリケーションプログラムの実行
が終了した時にそのアプリケーションプログラムの削除
を行わせるプログラムであることを特徴とする不正使用
防止機能追加プログラム。
(Supplementary Note 10) The computer is configured to add the contents of an arbitrary application program described in the executable form to the end of the contents of the unauthorized use prevention program described in the executable form. Addition of an unauthorized use prevention function that generates multiple application programs and adds identification information that enables each synthesized application program to be distinguished from each other to the unauthorized use prevention program portion of each synthesized application program. The program, wherein the unauthorized use prevention program causes the computer to compare with the identification information added to itself when the identification information is input, and only when the identification information matches, In the synthesized application program including self A program that causes a part other than itself to be duplicated, executes an application program corresponding to the duplicated part, and deletes the application program when the execution of the application program ends. Prevention function addition program.

【0083】(付記11) 実行形式で記述された任意
のアプリケーションプログラムの内容が末尾に足し合わ
されるとともに、他のプログラムと識別するための識別
情報が所定の位置に付加された不正使用防止プログラム
であって、LANを介して他の端末装置に接続されてい
るコンピュータに対し、自己に付加されている識別情報
をLAN上の全ての端末装置に向けて定期的に送信さ
せ、LAN上の何れかの端末装置から識別情報が送信さ
れた場合には自己に付加される識別情報と比較させ、そ
れら識別情報同士が一致していない時のみ、自己に足し
合わされているアプリケーションプログラムを複製さ
せ、その複製されたアプリケーションプログラムを実行
させ、そのアプリケーションプログラムの実行が終了し
た時にその複製されたアプリケーションプログラムの削
除を行わせるとともに、それら識別情報同士が一致した
時には前記複製されたアプリケーションプログラムによ
る処理を強制終了させることを特徴とする不正使用防止
プログラム。
(Supplementary Note 11) This is an unauthorized use prevention program in which the contents of an arbitrary application program described in an executable form are added to the end and identification information for identifying the application program from other programs is added at a predetermined position. Then, a computer connected to another terminal device via the LAN is caused to periodically transmit the identification information added to itself to all terminal devices on the LAN, and any one of the terminals on the LAN is transmitted. When the identification information is transmitted from the terminal device of the terminal device, the identification information is compared with the identification information added to the terminal device, and only when the identification information does not match, the application program added to the terminal device is duplicated. To execute the copied application program, and when the execution of the application program ends, the duplicated application program is executed. An unauthorized use prevention program for deleting an application program, and forcibly terminating processing by the copied application program when the identification information matches each other.

【0084】(付記12) 実行形式で記述された任意
のアプリケーションプログラムの内容が末尾に足し合わ
されるとともに、他のプログラムと識別するための識別
情報が所定の位置に付加された不正使用防止プログラム
であって、コンピュータに対し、前記識別情報の入力が
あった場合に自己に付加された識別情報と比較させ、そ
の識別情報同士が一致しているときにのみ、自己に足し
合わされているアプリケーションプログラムを複製さ
せ、その複製されたアプリケーションプログラムを実行
させ、そのアプリケーションプログラムの実行が終了し
た時にその複製されたアプリケーションプログラムの削
除を行わせることを特徴とする不正使用防止プログラ
ム。
(Supplementary Note 12) An unauthorized use prevention program in which the contents of an arbitrary application program described in an executable form are added to the end and identification information for identifying the application program from other programs is added at a predetermined position. Then, when the computer inputs the identification information, the computer compares the identification information with the identification information added to the computer. Only when the identification information matches each other, the application program added to the computer is compared. An unauthorized use prevention program which causes a copy, executes the copied application program, and deletes the copied application program when the execution of the application program is completed.

【0085】(付記13) コンピュータに対し、実行
形式で記述された不正使用防止プログラムの内容の末尾
に対して実行形式で記述された任意のアプリケーション
プログラムの内容を足し合わせることによって構成され
る合成済アプリケーションプログラムを、複数生成させ
るとともに、各合成済アプリケーションプログラムを相
互に識別可能とするための識別情報を、各合成済アプリ
ケーションプログラムのうちの不正使用防止プログラム
の部分に夫々付加させる不正使用防止機能追加プログラ
ムと、LANを介して他の端末装置に接続されているコ
ンピュータに対し、自己に付加されている識別情報をL
AN上の全ての端末装置に向けて定期的に送信させ、L
AN上の何れかの端末装置から識別情報が送信された場
合には自己に付加される識別情報と比較させ、それら識
別情報同士が一致していない時のみ、自己を含む合成済
アプリケーションプログラムの中から自己以外の部分を
複製させ、その複製された部分に相当するアプリケーシ
ョンプログラムを実行させ、そのアプリケーションプロ
グラムの実行が終了した時にその複製されたアプリケー
ションプログラムの削除を行わせるとともに、それら識
別情報同士が一致した時には前記複製されたアプリケー
ションプログラムによる処理を強制終了させる前記不正
使用防止プログラムとを記憶したことを特徴とするコン
ピュータ可読媒体。
(Supplementary Note 13) The computer is configured to add the contents of any application program described in the executable form to the end of the contents of the unauthorized use prevention program described in the executable form. Addition of an unauthorized use prevention function that generates multiple application programs and adds identification information that enables each synthesized application program to be distinguished from each other to the unauthorized use prevention program portion of each synthesized application program. The identification information added to the program and the computer connected to another terminal device through the LAN are
Periodically transmit to all terminal devices on the AN,
When the identification information is transmitted from any terminal device on the AN, the identification information is compared with the identification information added to the terminal itself. Only when the identification information does not match, the synthesized application program including the terminal includes the identification information. From the other, the application program corresponding to the duplicated part is executed, and when the execution of the application program is completed, the duplicated application program is deleted. A computer-readable medium storing the illegal use prevention program for forcibly terminating processing by the duplicated application program when they match.

【0086】(付記14) コンピュータに対し、実行
形式で記述された不正使用防止プログラムの内容の末尾
に対して実行形式で記述された任意のアプリケーション
プログラムの内容を足し合わせることによって構成され
る合成済アプリケーションプログラムを、複数生成させ
るとともに、各合成済アプリケーションプログラムを相
互に識別可能とするための識別情報を、各合成済アプリ
ケーションプログラムのうちの不正使用防止プログラム
の部分に夫々付加させる不正使用防止機能追加プログラ
ムと、コンピュータに対し、前記識別情報の入力があっ
た場合に自己に付加された識別情報と比較させ、その識
別情報同士が一致しているときにのみ、自己を含む合成
済アプリケーションプログラムの中から自己以外の部分
を複製させ、その複製された部分に相当するアプリケー
ションプログラムを実行させ、そのアプリケーションプ
ログラムの実行が終了した時にその複製されたアプリケ
ーションプログラムの削除を行わせる前記不正使用防止
プログラムとを記憶したことを特徴とするコンピュータ
可読媒体。
(Supplementary Note 14) The computer is configured to add the contents of any application program described in the executable form to the end of the contents of the unauthorized use prevention program described in the executable form. Addition of an unauthorized use prevention function that generates multiple application programs and adds identification information that enables each synthesized application program to be distinguished from each other to the unauthorized use prevention program portion of each synthesized application program. When the identification information is input to the program and the computer, the program compares the identification information with the identification information added to the program. From the part other than the self. A computer-readable medium storing the unauthorized use prevention program for executing an application program corresponding to a manufactured part and deleting the duplicated application program when the execution of the application program is completed. .

【0087】[0087]

【発明の効果】以上に説明したように、本発明のプログ
ラム合成方法によると、ソースプログラムを用いて修正
することなく、実行形式で記述された任意のアプリケー
ションプログラムによる処理よりも先に実行されるべき
新たな機能を当該アプリケーションに簡単に追加するこ
とができる。
As described above, according to the program synthesizing method of the present invention, the processing is executed before the processing by an arbitrary application program described in an executable form without modification using a source program. Powerful new functions can be easily added to the application.

【0088】また、このアプリケーションプログラムが
不正に使用されないための機能を実現するための不正使
用防止プログラムに当該アプリケーションプログラムを
合成すれば、不正使用防止機能を当該アプリケーション
プログラムに簡単に追加することができる。
Further, if the application program is combined with an unauthorized use prevention program for realizing a function for preventing the application program from being used illegally, the unauthorized use prevention function can be easily added to the application program. .

【図面の簡単な説明】[Brief description of the drawings]

【図1】 本発明によるプログラム合成方法が適用され
るコンピュータの内部回路の概略構成図
FIG. 1 is a schematic configuration diagram of an internal circuit of a computer to which a program synthesizing method according to the present invention is applied;

【図2】 図1のコンピュータのディスプレイに表示さ
れるライセンスキー作成画面の一例を示す例示図
FIG. 2 is an exemplary view showing an example of a license key creation screen displayed on the display of the computer of FIG. 1;

【図3】 図1のコンピュータのHDDに格納されるユ
ーザコードファイルのデータ構成の一例を示す例示図
FIG. 3 is an exemplary view showing an example of a data configuration of a user code file stored in an HDD of the computer of FIG. 1;

【図4】 図1のコンピュータにおいて実行される合成
プログラムの処理内容を示すフローチャート
FIG. 4 is a flowchart showing processing contents of a synthesis program executed in the computer of FIG. 1;

【図5】 図1のコンピュータのディスプレイに表示さ
れるメイン画面の一例を示す例示図
FIG. 5 is an exemplary view showing an example of a main screen displayed on a display of the computer of FIG. 1;

【図6】 図1のコンピュータのディスプレイに表示さ
れる詳細設定画面の一例を示す例示図
FIG. 6 is an exemplary view showing an example of a detailed setting screen displayed on the display of the computer of FIG. 1;

【図7】 合成済アプリがインストールされる一般的な
コンピュータの内部回路の概略構成図
FIG. 7 is a schematic configuration diagram of an internal circuit of a general computer on which a synthesized application is installed.

【図8】 図6のコンピュータにおいて実行される合成
済アプリケーションプログラムの処理内容を示すフロー
チャート
8 is a flowchart showing processing contents of a synthesized application program executed in the computer of FIG. 6;

【図9】 図6のコンピュータにおいて実行される合成
済インストーラの処理内容を示すフローチャート
9 is a flowchart showing processing contents of a combined installer executed by the computer of FIG. 6;

【符号の説明】[Explanation of symbols]

10 コンピュータ 11 CPU 12 RAM 13 ハードディスクドライブ(HDD) 14 フロッピィディスクドライブ(FDD) 15 CD−ROMドライブ 16 フロッピィディスク 17 CD−ROMディスク 50 コンピュータ 51 CPU 52 RAM 53 通信制御回路 53 ハードディスクドライブ(HDD) 54 フロッピィディスクドライブ(FDD) 55 CD−ROMドライブ 10 Computer 11 CPU 12 RAM 13 Hard Disk Drive (HDD) 14 Floppy Disk Drive (FDD) 15 CD-ROM Drive 16 Floppy Disk 17 CD-ROM Disk 50 Computer 51 CPU 52 RAM 53 Communication Control Circuit 53 Hard Disk Drive (HDD) 54 Floppy Disk drive (FDD) 55 CD-ROM drive

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】実行形式で記述された追加機能プログラム
の内容の末尾に、実行形式で記述された任意のアプリケ
ーションプログラムの内容を足し合わせることにより、
合成済アプリケーションプログラムを生成するプログラ
ム合成方法であって、 前記追加機能プログラムは、所定の機能を実現する処理
をコンピュータに行わせるとともに、その処理の後、コ
ンピュータに対し、自己を含む合成済アプリケーション
プログラムの中から自己以外の部分を複製させ、複製さ
れた部分に相当するアプリケーションプログラムを実行
させ、そのアプリケーションプログラムの実行が終了し
たときにそのアプリケーションプログラムの削除を行わ
せるプログラムであることを特徴とするプログラム合成
方法。
1. The method according to claim 1, further comprising: adding the contents of an arbitrary application program described in the executable form to the end of the contents of the additional function program described in the executable form.
A program synthesizing method for generating a synthesized application program, wherein the additional function program causes a computer to perform processing for realizing a predetermined function, and after the processing, causes the computer to execute a synthesized application program including itself. A program that causes a part other than itself to be duplicated from among them, executes an application program corresponding to the duplicated part, and deletes the application program when the execution of the application program ends. Program synthesis method.
【請求項2】実行形式で記述された追加機能プログラム
の内容の末尾に対して実行形式で記述された任意のアプ
リケーションプログラムの内容を足し合わせることによ
って構成される合成済アプリケーションプログラムを、
コンピュータに生成させるプログラム合成プログラムで
あって、 前記追加機能プログラムは、所定の機能を実現する処理
をコンピュータに行わせるとともに、その処理の後、コ
ンピュータに対し、自己を含む合成済アプリケーション
プログラムの中から自己以外の部分を複製させ、複製さ
れた部分に相当するアプリケーションプログラムを実行
させ、そのアプリケーションプログラムの実行が終了し
たときにそのアプリケーションプログラムの削除を行わ
せるプログラムであることを特徴とするプログラム合成
プログラム。
2. A combined application program formed by adding the contents of an arbitrary application program described in an executable form to the end of the contents of an additional function program described in an executable form.
A program synthesizing program to be generated by a computer, wherein the additional function program causes the computer to perform processing for realizing a predetermined function, and after the processing, causes the computer to perform processing from among synthesized application programs including its own. A program synthesizing program, which is a program for causing a part other than itself to be duplicated, executing an application program corresponding to the duplicated part, and deleting the application program when the execution of the application program ends. .
【請求項3】実行形式で記述された不正使用防止プログ
ラムの内容の末尾に対して実行形式で記述された任意の
アプリケーションプログラムの内容を足し合わせること
によって構成される合成済アプリケーションプログラム
を、複数生成するとともに、各合成済アプリケーション
プログラムを相互に識別可能とするための識別情報を、
各合成済アプリケーションプログラムのうちの不正使用
防止プログラムの部分に夫々付加する不正使用防止機能
追加方法であって、 前記不正使用防止プログラムは、LANを介して他の端
末装置に接続されているコンピュータに対し、自己に付
加されている識別情報をLAN上の全ての端末装置に向
けて定期的に送信させ、LAN上の何れかの端末装置か
ら識別情報が送信された場合には自己に付加される識別
情報と比較させ、それら識別情報同士が一致していない
時のみ、自己を含む合成済アプリケーションプログラム
の中から自己以外の部分を複製させ、その複製された部
分に相当するアプリケーションプログラムを実行させ、
そのアプリケーションプログラムの実行が終了した時に
その複製されたアプリケーションプログラムの削除を行
わせるとともに、それら識別情報同士が一致した時には
前記複製されたアプリケーションプログラムによる処理
を強制終了させるプログラムであることを特徴とする不
正使用防止機能追加方法。
3. A plurality of synthesized application programs generated by adding the contents of an arbitrary application program described in an executable form to the end of the contents of an unauthorized use prevention program described in an executable form. And identification information for enabling each synthesized application program to be distinguished from each other.
A method for adding an unauthorized use prevention function to be added to a portion of an unauthorized use prevention program of each synthesized application program, wherein the unauthorized use prevention program is transmitted to a computer connected to another terminal device via a LAN. On the other hand, the identification information added to the terminal is periodically transmitted to all the terminal devices on the LAN, and when the identification information is transmitted from any terminal device on the LAN, the identification information is added to the terminal. Comparison with the identification information, and only when the identification information does not match each other, a portion other than the self is copied from the combined application program including the self, and an application program corresponding to the copied portion is executed,
When the execution of the application program is completed, the copied application program is deleted, and when the pieces of identification information match each other, the processing by the copied application program is forcibly terminated. How to add unauthorized use prevention function.
【請求項4】コンピュータに対し、実行形式で記述され
た不正使用防止プログラムの内容の末尾に対して実行形
式で記述された任意のアプリケーションプログラムの内
容を足し合わせることによって構成される合成済アプリ
ケーションプログラムを、複数生成させるとともに、各
合成済アプリケーションプログラムを相互に識別可能と
するための識別情報を、各合成済アプリケーションプロ
グラムのうちの不正使用防止プログラムの部分に夫々付
加させる不正使用防止機能追加プログラムであって、 前記不正使用防止プログラムは、LANを介して他の端
末装置に接続されているコンピュータに対し、自己に付
加されている識別情報をLAN上の全ての端末装置に向
けて定期的に送信させ、LAN上の何れかの端末装置か
ら識別情報が送信された場合には自己に付加される識別
情報と比較させ、それら識別情報同士が一致していない
時のみ、自己を含む合成済アプリケーションプログラム
の中から自己以外の部分を複製させ、その複製された部
分に相当するアプリケーションプログラムを実行させ、
そのアプリケーションプログラムの実行が終了した時に
その複製されたアプリケーションプログラムの削除を行
わせるとともに、それら識別情報同士が一致した時には
前記複製されたアプリケーションプログラムによる処理
を強制終了させるプログラムであることを特徴とする不
正使用防止機能追加プログラム。
4. A combined application program constituted by adding to a computer the contents of an arbitrary application program described in an executable form to the end of the contents of an unauthorized use prevention program described in an executable form. Is generated by a plurality of unauthorized application prevention programs, and identification information for enabling each synthesized application program to be identified mutually is added to an unauthorized use prevention program portion of each synthesized application program. The unauthorized use prevention program periodically transmits identification information added to itself to a computer connected to another terminal device via the LAN to all terminal devices on the LAN. ID information is transmitted from any terminal device on the LAN. In the event that the identification information is added, it is compared with the identification information added to the self, and only when the identification information does not match, the part other than the self is copied from the synthesized application program including the self, and the copied Execute the application program corresponding to the part,
When the execution of the application program is completed, the copied application program is deleted, and when the pieces of identification information match each other, the processing by the copied application program is forcibly terminated. Additional program to prevent unauthorized use.
【請求項5】実行形式で記述された任意のアプリケーシ
ョンプログラムの内容が末尾に足し合わされるととも
に、他のプログラムと識別するための識別情報が所定の
位置に付加された不正使用防止プログラムであって、 LANを介して他の端末装置に接続されているコンピュ
ータに対し、自己に付加されている識別情報をLAN上
の全ての端末装置に向けて定期的に送信させ、LAN上
の何れかの端末装置から識別情報が送信された場合には
自己に付加される識別情報と比較させ、それら識別情報
同士が一致していない時のみ、自己に足し合わされてい
るアプリケーションプログラムを複製させ、その複製さ
れたアプリケーションプログラムを実行させ、そのアプ
リケーションプログラムの実行が終了した時にその複製
されたアプリケーションプログラムの削除を行わせると
ともに、それら識別情報同士が一致した時には前記複製
されたアプリケーションプログラムによる処理を強制終
了させることを特徴とする不正使用防止プログラム。
5. An unauthorized use prevention program in which the contents of an arbitrary application program described in an executable form are added to the end and identification information for identifying the application program from other programs is added at a predetermined position. A computer connected to another terminal device via the LAN, periodically transmitting the identification information added thereto to all the terminal devices on the LAN; When the identification information is transmitted from the device, it is compared with the identification information added to itself, and only when the identification information does not match, the application program added to itself is copied, and the copied application program is copied. The application program is executed, and when the execution of the application program is completed, the copied application is executed. An unauthorized use prevention program for deleting an application program and forcibly terminating processing by the duplicated application program when the identification information matches each other.
JP2001021506A 2001-01-30 2001-01-30 Program composing method, program composing program, fraudulent use preventing function adding method, and fraudulent use preventing function adding program Pending JP2002229790A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001021506A JP2002229790A (en) 2001-01-30 2001-01-30 Program composing method, program composing program, fraudulent use preventing function adding method, and fraudulent use preventing function adding program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001021506A JP2002229790A (en) 2001-01-30 2001-01-30 Program composing method, program composing program, fraudulent use preventing function adding method, and fraudulent use preventing function adding program

Publications (1)

Publication Number Publication Date
JP2002229790A true JP2002229790A (en) 2002-08-16

Family

ID=18887062

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001021506A Pending JP2002229790A (en) 2001-01-30 2001-01-30 Program composing method, program composing program, fraudulent use preventing function adding method, and fraudulent use preventing function adding program

Country Status (1)

Country Link
JP (1) JP2002229790A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013168797A1 (en) 2012-05-10 2013-11-14 トヨタ自動車株式会社 Software distribution system, software distribution method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10254840A (en) * 1997-03-13 1998-09-25 Fujitsu Ltd Mobile code execution system
JPH1131131A (en) * 1997-07-14 1999-02-02 Fuji Xerox Co Ltd Service providing system, authentication device and medium recording authentication program
JP2000250751A (en) * 1999-02-25 2000-09-14 Casio Comput Co Ltd Data processor and storage medium
JP2000279645A (en) * 1999-01-29 2000-10-10 Namco Ltd Game machine and computer-readable recording medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10254840A (en) * 1997-03-13 1998-09-25 Fujitsu Ltd Mobile code execution system
JPH1131131A (en) * 1997-07-14 1999-02-02 Fuji Xerox Co Ltd Service providing system, authentication device and medium recording authentication program
JP2000279645A (en) * 1999-01-29 2000-10-10 Namco Ltd Game machine and computer-readable recording medium
JP2000250751A (en) * 1999-02-25 2000-09-14 Casio Comput Co Ltd Data processor and storage medium

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013168797A1 (en) 2012-05-10 2013-11-14 トヨタ自動車株式会社 Software distribution system, software distribution method
JP2013235504A (en) * 2012-05-10 2013-11-21 Toyota Motor Corp Software distribution system and software distribution method
US9208320B2 (en) 2012-05-10 2015-12-08 Toyota Jidosha Kabushiki Kaisha Software distribution system and software distribution method

Similar Documents

Publication Publication Date Title
US20050021992A1 (en) Client terminal, software control method and control program
JP2005338959A (en) Information processor, execution decision method, and computer program
US20110066972A1 (en) Information processing apparatus, program introduction assistance system and computer readable information recording medium
JP2001508575A (en) Software Update Manager
JP5482183B2 (en) Information processing apparatus and program
JP4938869B2 (en) SDK use restriction adding device and use restricted software development system
JP2005338940A (en) Installation method, information processor and device driver
EP1396798A1 (en) A license file, a license management module and alicense management system
US6473771B1 (en) Method of integrating application programs to form or modify suite, and a suite integration toolkit to perform same
JP3715478B2 (en) Apparatus and method for installation recovery system
JP3774684B2 (en) Information processing apparatus, printer setting method of information processing apparatus, program, and recording medium
JP5141460B2 (en) Control program, information processing system, and information processing method
US20050193265A1 (en) Method for installing software
JP2009151480A (en) Contracted product supply method, client device, server, program, and recording medium having the program recorded therein
JP2002268764A (en) Software license management system with ic card
JP2002229790A (en) Program composing method, program composing program, fraudulent use preventing function adding method, and fraudulent use preventing function adding program
JP2007316938A (en) License management program, method for controlling use of software, license check program, and license check setup program
JP2003167740A (en) Install file creation device and user using environment management method
JP4420446B2 (en) Information processing apparatus and control method thereof
JP2009193249A (en) Data management system, data management apparatus, information processing apparatus, and computer program
JP2004185599A (en) Method of preventing unauthorized use of virtual cd image file
JP4591740B2 (en) Software license management method
JP7013176B2 (en) Programs, information processing devices, and control methods
WO2006006241A1 (en) Content distribution system and launcher
JP7289940B2 (en) Program set, storage medium, and information processing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070906

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20071116

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101214

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110412