JP3570940B2 - Dynamic link library control method, method and recording medium - Google Patents

Dynamic link library control method, method and recording medium Download PDF

Info

Publication number
JP3570940B2
JP3570940B2 JP33403099A JP33403099A JP3570940B2 JP 3570940 B2 JP3570940 B2 JP 3570940B2 JP 33403099 A JP33403099 A JP 33403099A JP 33403099 A JP33403099 A JP 33403099A JP 3570940 B2 JP3570940 B2 JP 3570940B2
Authority
JP
Japan
Prior art keywords
dynamic link
application
link library
storage unit
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP33403099A
Other languages
Japanese (ja)
Other versions
JP2001154831A (en
Inventor
誠 楳田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Software Hokkaido Ltd
Original Assignee
NEC Software Hokkaido 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 NEC Software Hokkaido Ltd filed Critical NEC Software Hokkaido Ltd
Priority to JP33403099A priority Critical patent/JP3570940B2/en
Publication of JP2001154831A publication Critical patent/JP2001154831A/en
Application granted granted Critical
Publication of JP3570940B2 publication Critical patent/JP3570940B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、ダイナミックリンクライブラリの制御方式に関し、特に異なるバージョンのダイナミックリンクライブラリが混在する中から起動されたアプリケーションに対応したダイナミックリンクライブラリをダイナミックリンクするダイナミックリンクライブラリ制御方式,方法および記録媒体に関する。
【0002】
【従来の技術】
アプリケーションの開発に使用している言語は、ランタイムライブラリがダイナミックリンクライブラリとして提供されることが通常の形態である。
【0003】
そこで、アプリケーションパッケージ内にランタイムライブラリ等のダイナミックリンクライブラリも同梱し、アプリケーションとダイナミックリンクライブラリをインストールするためのアプリケーションインストール手段を提供している。
【0004】
ところが、言語のランタイムライブラリは障害修正や機能追加のために頻繁にバージョンアップが施される。
【0005】
そのため、アプリケーションの開発時期の相違によりバージョンの異なるダイナミックリンクライブラリを同梱することになり、複数のアプリケーションをインストールする利用者は複数のダイナミックリンクライブラリから、一つのバージョンを選択する必要があった。
【0006】
従来技術について、図8を用いて更に説明する。
【0007】
図8は、従来例の構成を示すブロック図である。
【0008】
図8を参照すると、従来例は入力装置1とデータ処理装置4と記憶装置5とから構成されていて、データ処理装置4はアプリケーションインストール手段41とアプリケーション起動手段42とダイナミックリンクライブラリリンク手段43とを含み、記憶装置5はアプリケーション記憶部51とダイナミックリンクライブラリ記憶部52とアプリケーション起動情報記憶部53とを含む。
【0009】
アプリケーションインストール手段41は、ダイナミックリンクライブラリ記憶部52にインストールされているダイナミックリンクライブラリのバージョンと、これからインストールしようとするダイナミックリンクライブラリのバージョンを比較し、異なるバージョンをインストールしようとする場合はその旨を利用者に通知し、既にインストールされているダイナミックリンクライブラリを使いつづけるか、異なるバージョンのダイナミックリンクライブラリを新たにインストールするかを利用者に選択させる。
【0010】
異なるバージョンのダイナミックリンクライブラリを新たにインストールする方が選択されると、ダイナミックリンクライブラリ記憶部52に異なるバージョンのダイナミックリンクライブラリを格納する。
【0011】
アプリケーション起動手段42で起動されたアプリケーションがダイナミックリンクを使用すると、ダイナミックリンクライブラリリンク手段43がダイナミックリンクライブラリ記憶部52に格納されている一意のダイナミックリンクライブラリをリンクする。
【0012】
例えば、ダイナミックリンクライブラリをダイナミックリンクして実行する2つのアプリケーションがあり、アプリケーションAは古いバージョンのダイナミックリンクライブラリとの組み合わせで正しく動作し、アプリケーションBは新しいバージョンのダイナミックリンクライブラリとの組み合わせで正しく動作するものとする。
【0013】
ダイナミックリンクライブラリ記憶部52に古いバージョンのダイナミックリンクライブラリが格納されている場合、アプリケーション起動手段42でアプリケーションAを起動したとき、ダイナミックリンクライブラリリンク手段43が古いバージョンのダイナミックリンクライブラリをダイナミックリンクして、アプリケーションAは正しく動作する。
【0014】
続いてアプリケーションBを起動したとき、ダイナミックリンクライブラリ記憶部52には古いバージョンのダイナミックリンクライブラリが格納されているので、古いバージョンのダイナミックリンクライブラリがダイナミックリンクされ、アプリケーションBは正しく動作しない。
【0015】
そのため、アプリケーションBを起動する前に、アプリケーションインストール手段41で新しいバージョンのダイナミックリンクライブラリをダイナミックリンクライブラリ記憶部52に格納し直す。
【0016】
そして、アプリケーションBを起動すると、新しいバージョンのダイナミックリンクライブラリがダイナミックリンクされ、アプリケーションBは正しく動作する。
【0017】
その後に、再度アプリケーションAを起動する場合には、古いバージョンのダイナミックリンクライブラリをダイナミックリンクライブラリ記憶部52に格納し直す。
【0018】
このように、アプリケーションが使用するバージョンのダイナミックリンクライブラリを、その都度ダイナミックリンクライブラリ記憶部52に格納し直している。
【0019】
あるいは、ダイナミックリンクライブラリのバージョン競合を回避するために、ダイナミックリンクライブラリの格納場所を分ける方法もある(この構成については図示せず)。
【0020】
この方法では、アプリケーションに関連するダイナミックリンクライブラリをアプリケーションと同じ格納場所に格納している。
【0021】
【発明が解決しようとする課題】
しかしながら、上述した従来の技術には、次のような問題点があった。
【0022】
すなわち、ダイナミックリンクライブラリ記憶部に択一的に1つのバージョンのダイナミックリンクライブラリしか格納することができないために、その都度アプリケーションが使用するバージョンのダイナミックリンクライブラリをダイナミックリンクライブラリ記憶部に格納し直さなければならず、運用が煩雑で誤操作を招きやすいことである。もし、正しく格納し直さずにアプリケーションを実行すると、アプリケーションが誤動作して障害を引き起こすことになる。
【0023】
また、ダイナミックリンクライブラリの格納場所を分けて格納する場合には、同一ダイナミックリンクライブラリが1個だけ存在すればよいときでも、それを使用するアプリケーションの個数分だけ存在することになり、ダイナミックリンクライブラリの格納スペースが増大してしまう。
【0024】
本発明の目的は、複数のアプリケーションがそれぞれ異なるバージョンのダイナミックリンクライブラリをダイナミックリンクする必要がある場合にも、アプリケーションに正しいダイナミックリンクライブラリをダイナミックリンクするダイナミックリンクライブラリ制御方式,方法および記録媒体を提供することにある。
【0025】
【課題を解決するための手段】
本願第1の発明のダイナミックリンクライブラリ制御方式は、アプリケーションを格納するアプリケーション記憶部と、ダイナミックリンクライブラリを格納するダイナミックリンクライブラリ記憶部と、アプリケーション起動情報を登録するアプリケーション起動情報記憶部と、アプリケーションとダイナミックリンクライブラリとの対応情報を登録するダイナミックリンク情報記憶部と、を有し、アプリケーションインストール手段とアプリケーション起動手段に指示を与える入力手段と、前記入力手段によって指定されたアプリケーションを前記アプリケーション記憶部に格納し格納場所をアプリケーション起動情報として前記アプリケーション起動情報記憶部に登録しダイナミックリンクライブラリを前記ダイナミックリンクライブラリ記憶部に仮格納するアプリケーションインストール手段と、前記仮格納されたダイナミックリンクライブラリを前記ダイナミックリンクライブラリ記憶部に本格納し前記アプリケーションインストール手段によって格納されたアプリケーションと前記本格納されたダイナミックリンクライブラリとの対応情報を前記ダイナミックリンク情報記憶部に登録するダイナミックリンクライブラリ登録手段と、前記入力手段によって指定されたアプリケーションを前記アプリケーション起動情報記憶部のアプリケーション起動情報を基に前記アプリケーション記憶部からロードして起動実行するアプリケーション起動手段と、前記アプリケーション起動手段によって起動されたアプリケーションがダイナミックリンクを要求したときに呼び出し元アプリケーション名と前記ダイナミックリンク情報記憶部の対応情報を基にダイナミックリンクライブラリを前記ダイナミックリンクライブラリ記憶部からロードしてアプリケーションにダイナミックリンクするダイナミックリンクライブラリリンク手段と、を備えることを特徴とする。
【0026】
本願第2の発明のダイナミックリンクライブラリ制御方式は、第1の発明において前記ダイナミックリンクライブラリ記憶部は、前記ダイナミックリンクライブラリが仮格納される仮格納領域と前記ダイナミックリンクライブラリが本格納される本格納領域の2つに分割管理されることを特徴とする。
【0027】
本願第3の発明のダイナミックリンクライブラリ制御方式は、第2の発明において前記本格納領域は、同一名のダイナミックリンクライブラリを格納し得る構造を成すことを特徴とする。
【0028】
本願第4の発明のダイナミックリンクライブラリ制御方式は、第1の発明において前記ダイナミックリンクライブラリ登録手段は、前記仮格納されたダイナミックリンクライブラリと既に本格納されているダイナミックリンクライブラリとを比較し、前記仮格納されたダイナミックリンクライブラリと同一名かつ同一内容のものが存在しないときに、前記仮格納されたダイナミックリンクライブラリを本格納することを特徴とする。
【0029】
本願第5の発明のダイナミックリンクライブラリ制御方式は、第1の発明において前記対応情報は、前記アプリケーション名と前記本格納されたダイナミックリンクライブラリ名と前記本格納されたダイナミックリンクライブラリ格納場所とから成ることを特徴とする。
【0030】
本願第6の発明のダイナミックリンクライブラリ制御方法は、アプリケーションをアプリケーション記憶部に格納してアプリケーション名とアプリケーション格納場所をアプリケーション起動情報としてアプリケーション起動情報記憶部に登録し、ダイナミックリンクライブラリをダイナミックリンクライブラリ記憶部に仮格納し、前記仮格納されたダイナミックリンクライブラリと既にダイナミックリンクライブラリ記憶部に本格納されているダイナミックリンクライブラリとを比較し前記仮格納されたダイナミックリンクライブラリと同一名かつ同一内容のものが存在しないときに前記仮格納されたダイナミックリンクライブラリをダイナミックリンクライブラリ記憶部に本格納し、前記アプリケーション名と前記本格納されたダイナミックリンクライブラリ名と本格納されたダイナミックリンクライブラリ格納場所を対応情報としてダイナミックリンク情報記憶部に登録し、起動指定されたアプリケーションを前記アプリケーション起動情報を参照してアプリケーション記憶部からロードして起動実行し、前記実行中のアプリケーションがダイナミックリンクを要求したときに前記アプリケーション名をキーとして前記対応情報を参照し、前記対応情報に登録されているダイナミックリンクライブラリを前記ダイナミックリンクライブラリ記憶部からロードしてアプリケーションにダイナミックリンクする、ことを特徴とする。
【0031】
本願第7の発明の記録媒体は、アプリケーションをアプリケーション記憶部に格納してアプリケーション名とアプリケーション格納場所をアプリケーション起動情報としてアプリケーション起動情報記憶部に登録するアプリケーション格納処理と、ダイナミックリンクライブラリをダイナミックリンクライブラリ記憶部に仮格納するダイナミックリンクライブラリ仮格納処理と、前記仮格納されたダイナミックリンクライブラリと既にダイナミックリンクライブラリ記憶部に本格納されているダイナミックリンクライブラリとを比較し前記仮格納されたダイナミックリンクライブラリと同一名かつ同一内容のものが存在しないときに前記仮格納されたダイナミックリンクライブラリをダイナミックリンクライブラリ記憶部に本格納するダイナミックリンクライブラリ本格納処理と、前記アプリケーション名と前記本格納されたダイナミックリンクライブラリ名と本格納されたダイナミックリンクライブラリ格納場所を対応情報としてダイナミックリンク情報記憶部に登録する対応情報登録処理と、起動指定されたアプリケーションを前記アプリケーション起動情報を参照してアプリケーション記憶部からロードして起動実行するアプリケーション起動処理と、前記実行中のアプリケーションがダイナミックリンクを要求したときに前記アプリケーション名をキーとして前記対応情報を参照する対応情報参照処理と、前記対応情報に登録されているダイナミックリンクライブラリを前記ダイナミックリンクライブラリ記憶部からロードしてアプリケーションにダイナミックリンクするダイナミックリンク処理と、をコンピュータに実行させるためのプログラムを記録したことを特徴とする。
【0033】
【発明の実施の形態】
本発明の特徴は、ダイナミックリンクライブラリ名が同じでも内容が異なるダイナミックリンクライブラリ、即ちバージョンが異なるダイナミックリンクライブラリを同一ダイナミックリンクライブラリ記憶部に保管し、起動されたアプリケーションに対応したバージョンのダイナミックリンクライブラリを選択してダイナミックリンクすることにある。
【0034】
本発明の実施の形態について、図面を参照して詳細に説明する。
【0035】
図1は、本発明の実施の形態の構成を示すブロック図である。
【0036】
図2は、ダイナミックリンクライブラリ記憶部を説明する図である。
【0037】
図3は、アプリケーション起動情報の構造を示す図である。
【0038】
図4は、対応情報の構造を示す図である。
【0039】
図1を参照すると、本発明のダイナミックリンクライブラリ制御方式は、入力装置1と、データ処理装置2と、記憶装置3と、から構成されている。
【0040】
入力装置1は、データ処理装置2に指示を与える装置で、キーボードなどである。
【0041】
データ処理装置2は、アプリケーションインストール手段21と、ダイナミックリンクライブラリ登録手段22と、アプリケーション起動手段23と、ダイナミックリンクライブラリリンク手段24と、を備える。
【0042】
アプリケーションインストール手段21は、入力装置1によって指定されたアプリケーションプログラム(以降、単にアプリケーションという)を、インストール装置(図示せず)からアプリケーション記憶部31に格納し、その格納場所をアプリケーション起動情報としてアプリケーション起動情報記憶部33に登録する。また、アプリケーションインストール手段21は、ダイナミックリンクライブラリを、インストール装置(図示せず)からダイナミックリンクライブラリ記憶部32に格納(仮格納)する。
【0043】
ダイナミックリンクライブラリ登録手段22は、アプリケーションインストール手段21終了時に続けて呼び出される。ダイナミックリンクライブラリ登録手段22は、同じダイナミックリンクライブラリ名で内容が異なるダイナミックリンクライブラリをダイナミックリンクライブラリ記憶部32内で共存させるために、ダイナミックリンクライブラリ記憶部32内で格納場所を分けて格納し管理する。
【0044】
ダイナミックリンクライブラリ登録手段22は、アプリケーションインストール手段21によりダイナミックリンクライブラリ記憶部32に仮格納されたダイナミックリンクライブラリの格納場所を変更して本格納する。更に、アプリケーションインストール手段21により格納されたアプリケーション名と本格納したダイナミックリンクライブラリのダイナミックリンクライブラリ情報(ダイナミックリンクライブラリ名およびダイナミックリンクライブラリ格納場所)との対応情報をダイナミックリンク情報記憶部34に登録する。
【0045】
アプリケーション起動手段23は、入力手段1によって指定されたアプリケーションを、アプリケーションインストール手段21がアプリケーション起動情報記憶部33に登録したアプリケーション起動情報を基にアプリケーション記憶部31からロードして起動実行する。
【0046】
ダイナミックリンクライブラリリンク手段24は、アプリケーション起動手段23によって起動されたアプリケーションがダイナミックリンクを要求したときに、制御を渡される。
【0047】
ダイナミックリンクライブラリリンク手段24は、呼び出し元アプリケーション名とダイナミックリンクライブラリ登録手段22がダイナミックリンク情報記憶部34に登録した対応情報を基に、適切なダイナミックリンクライブラリをダイナミックリンクライブラリ記憶部32からロードしてアプリケーションにダイナミックリンクする。
【0048】
記憶装置3は、情報を記憶する装置であり、アプリケーション記憶部31と、ダイナミックリンクライブラリ記憶部32と、アプリケーション起動情報記憶部33と、ダイナミックリンク情報記憶部34と、を備えている。
【0049】
アプリケーション記憶部31は、アプリケーションを格納する領域である。アプリケーションはアプリケーションインストール手段21により格納される。
【0050】
ダイナミックリンクライブラリ記憶部32は、ダイナミックリンクライブラリを格納する領域である。同一名のダイナミックリンクライブラリが共存できるように、ダイナミックリンクライブラリ登録手段22により格納管理される。
【0051】
ダイナミックリンクライブラリ記憶部32の構造を図2(a)に示す。図2(a)を参照すると、ダイナミックリンクライブラリ記憶部32は、仮格納領域と本格納領域に分けられる。ダイナミックリンクライブラリ登録手段22はダイナミックリンクライブラリを格納するときに、先ず仮格納領域に格納して同一名かつ同一内容のものが本格納領域内に既にあるかないかを確認し、同一名かつ同一内容のものが本格納領域内になければ仮格納領域のダイナミックリンクライブラリを本格納領域に移す。ダイナミックリンクライブラリ記憶部32の格納例を図2(b)に示す。図2(b)を参照すると、ダイナミックリンクライブラリ記憶部32の本格納領域には、ダイナミックリンクライブラリ名が”AAA”,”BBB”,”CCC”の3つのダイナミックリンクライブラリが格納されている。
【0052】
アプリケーション起動情報記憶部33は、各アプリケーションがアプリケーション記憶部31内のどこの領域にインストールされているかのアプリケーション起動情報を登録する領域である。アプリケーション起動情報は、アプリケーション名とアプリケーション記憶部31内のアプリケーション格納場所とから成り、アプリケーションインストール手段21により登録される。アプリケーション起動情報の構造を図3に示す。
【0053】
ダイナミックリンク情報記憶部34は、アプリケーションとダイナミックリンクライブラリの対応情報を登録する領域である。対応情報は、アプリケーション名とダイナミックリンクライブラリ名とダイナミックリンクライブラリ記憶部32内のダイナミックリンクライブラリ格納場所とから成り、ダイナミックリンクライブラリ登録手段22により登録される。対応情報の構造を図4に示す。
【0054】
本発明の実施の形態の動作について、図1,図5および図6を参照して詳細に説明する。
【0055】
図5は、アプリケーションおよびダイナミックリンクライブラリ格納動作のフローを示す図である。
【0056】
図6は、ダイナミックリンク動作のフローを示す図である。
【0057】
先ず、アプリケーションおよびダイナミックリンクライブラリを格納する動作について説明する。
【0058】
図5を参照すると、アプリケーションインストール手段21は、入力装置1によって起動され、アプリケーションをアプリケーション記憶部31に格納し、その格納場所をアプリケーション起動情報記憶部33に登録する。また、ダイナミックリンクライブラリが有れば、ダイナミックリンクライブラリをダイナミックリンクライブラリ記憶部32に仮格納する(ステップA1)。
【0059】
ダイナミックリンクライブラリ登録手段22は、アプリケーションインストール手段21終了時に続けて呼び出され、アプリケーションインストール手段21によってダイナミックリンクライブラリが仮格納されたかどうかを確認する(ステップA2)。
【0060】
ダイナミックリンクライブラリが仮格納されたことを検出すると、同じダイナミックリンクライブラリ名のダイナミックリンクライブラリが既に登録されているかどうかを確認する(ステップA3)。
【0061】
同じダイナミックリンクライブラリ名のダイナミックリンクライブラリが既に登録されている場合は、内容が一致しているかどうかを確認する(ステップA4)。
【0062】
ダイナミックリンクライブラリ名も内容も完全に一致した場合は、既に登録されているダイナミックリンクライブラリの格納情報で対応情報を構成してダイナミックリンク情報記憶部34に登録する(ステップA5)。
【0063】
ダイナミックリンクライブラリ名が新規の場合、またはダイナミックリンクライブラリ名が同じでも内容が異なる場合、ステップA1で仮格納したダイナミックリンクライブラリを新規の場所に移動して本格納し、新規情報で対応情報を構成してダイナミックリンク情報記憶部34に登録する(ステップA6)。
【0064】
続いて、ダイナミックリンクの動作について説明する。
【0065】
図6を参照すると、アプリケーション起動手段23は、入力装置1によって指定されたアプリケーションをアプリケーション記憶部31からロードして起動実行する。起動されたアプリケーションはダイナミックリンクを要求して動作するものとする(ステップB1)。
【0066】
実行中のアプリケーションがダイナミックリンクを要求し、ダイナミックリンクライブラリリンク手段24が起動される(ステップB2)。
【0067】
ダイナミックリンクライブラリリンク手段24はダイナミックリンクライブラリ記憶部32に同一名のダイナミックリンクライブラリが格納されていても、ダイナミックリンク情報記憶部34に登録されている対応情報を基にアプリケーションと同時にインストールされたダイナミックリンクライブラリをダイナミックリンクする(ステップB3)。
【0068】
ダイナミックリンクライブラリをダイナミックリンクした後に、アプリケーションの実行を継続する(ステップB4)。
【0069】
図7を用いて、更に詳細に動作を説明する。
【0070】
図7は、動作を説明する図である。
【0071】
動作を説明する前提として、記憶装置3の各部が図7(a)〜(d)に示すようになっているものとする。
【0072】
先ず、前提を説明する。
【0073】
図7を参照すると、(a)は、アプリケーション記憶部31にアプリケーション”APR”が格納場所”r”から格納され、アプリケーション”APS”が格納場所”s”から格納されていることを示している。
【0074】
(b)は、ダイナミックリンクライブラリ記憶部32にダイナミックリンクライブラリ”DLLA”が格納場所”a”から格納され、ダイナミックリンクライブラリ”DLLB”が格納場所”b”から格納されていることを示している。
【0075】
(c)は、アプリケーション起動情報記憶部33に登録されているアプリケーション起動情報を示している。
【0076】
(d)は、ダイナミックリンク情報記憶部34に登録されている対応情報を示している。
【0077】
次に、新たなアプリケーションのインストールについて説明する。
【0078】
新たなアプリケーション”APT”をアプリケーションインストール手段21によりアプリケーション記憶部31に格納する。図7(e)は、アプリケーション”APT”がアプリケーション記憶部31の格納場所”t”から格納されたことを示している。また、図7(g)は、アプリケーション起動情報記憶部33にアプリケーション”APT”のアプリケーション起動情報が追加されたことを示している。
【0079】
アプリケーション”APT”にはダイナミックリンクライブラリ”DLLA”が同梱されているものとする。そこで、アプリケーションインストール手段21はダイナミックリンクライブラリ”DLLA”をダイナミックリンクライブラリ記憶部32の仮格納領域に格納する。
【0080】
ダイナミックリンクライブラリ登録手段22は、仮格納領域に格納されたダイナミックリンクライブラリ”DLLA”の内容が既に本格納領域に格納されている同一名のダイナミックリンクライブラリ(格納場所”a”から格納されているダイナミックリンクライブラリ”DLLA”)の内容と等しいか否かを確認する。この場合、格納場所”a”に格納されているダイナミックリンクライブラリ”DLLA”と内容が異なるものとする。
【0081】
ダイナミックリンクライブラリ登録手段22は、仮格納領域に格納されているダイナミックリンクライブラリ”DLLA”を本格納領域に移す。図7(f)は、ダイナミックリンクライブラリ”DLLA”がダイナミックリンクライブラリ記憶部32の格納場所”c”から格納されたことを示している。また、図7(h)は、ダイナミックリンク情報記憶部34にアプリケーション”APT”とダイナミックリンクライブラリ”DLLA”の対応情報が追加されたことを示している。
【0082】
続いて、新たにインストールされたアプリケーションの起動実行について説明する。
【0083】
アプリケーション起動手段23は、アプリケーション”APT”のアプリケーション起動情報を参照して、アプリケーション記憶部31の格納場所”t”からアプリケーション”APT”をロードして起動実行する。
【0084】
アプリケーション”APT”実行中に、アプリケーション”APT”がダイナミックリンクを要求すると、ダイナミックリンクライブラリリンク手段24が起動される。
【0085】
ダイナミックリンクライブラリリンク手段24は、ダイナミックリンクを要求したアプリケーション名をキーとして、ダイナミックリンク情報記憶部34の対応情報を参照し、ダイナミックリンクライブラリ記憶部32の格納場所”c”から格納されているダイナミックリンクライブラリ”DLLA”をロードしてダイナミックリンクする。
【0086】
ダイナミックリンクした後、アプリケーション”APT”の実行が継続される。
【0087】
このように、アプリケーション起動手段23によって起動されたアプリケーションがダイナミックリンクを要求したとき、ダイナミックリンクライブラリリンク手段24がダイナミックリンク情報記憶部34に登録されている対応情報を基に適切なダイナミックリンクライブラリをリンクすることにより、ダイナミックリンクライブラリ名が同一でも内容が異なるダイナミックリンクライブラリを別々のアプリケーションにリンクさせ同時に実行することができる。
【0088】
このことにより、アプリケーションとダイナミックリンクライブラリとの間の異バージョンによる非互換によって発生するトラブルを事前に防止する効果を生じる。
【0089】
また、ダイナミックリンクライブラリの格納位置によってバージョンを区別するため、アプリケーションおよびダイナミックリンクライブラリには、何の変更も加える必要がない利点が有る。
【0090】
本発明による上述した実施の形態において、ダイナミックリンクライブラリ制御方式の処理動作を実行するためのプログラム等を、データとして磁気ディスクや光ディスクなどの記録媒体(図示せず)に記録するようにし、記録されたデータを読み出してダイナミックリンクライブラリ制御方式を動作させるために用いる。このように、本発明によるダイナミックリンクライブラリ制御方式を動作させるデータを記録媒体に記録させ、この記録媒体をインストールすることによりダイナミックリンクライブラリ制御方式の機能が実現できるようになる。
【0091】
【発明の効果】
本発明の第1の効果は、ダイナミックリンクライブラリ名が同一でも内容が異なるダイナミックリンクライブラリを別々のアプリケーションにダイナミックリンクさせ同時に実行することができることである。
【0092】
その理由は、異なるバージョンのダイナミックリンクライブラリを格納する手段を設け、ダイナミックリンク時にアプリケーションと対応づける手段を設けたからである。
【0093】
本発明の第2の効果は、アプリケーション側(アプリケーション本体およびダイナミックリンクライブラリ)の変更を要しないことである。この結果、既出荷のアプリケーションに対しても、本発明を適用することができる。
【0094】
その理由は、アプリケーション側の変更を要しないように、異なるバージョンのダイナミックリンクライブラリを格納する手段を設け、ダイナミックリンク時にアプリケーションと対応づける手段を設けたからである。
【0095】
本発明の第3の効果は、ダイナミックリンクライブラリの格納スペースが必要最小限ですむことである。
【0096】
その理由は、異なるバージョンのダイナミックリンクライブラリを同一のダイナミックリンクライブラリ記憶部に格納して、アプリケーションから共通に使用できる手段を設けたからである。
【図面の簡単な説明】
【図1】本発明の実施の形態の構成を示すブロック図
【図2】ダイナミックリンクライブラリ記憶部を説明する図
【図3】アプリケーション起動情報の構造を示す図
【図4】対応情報の構造を示す図
【図5】アプリケーションおよびダイナミックリンクライブラリ格納動作のフローを示す図
【図6】ダイナミックリンク動作のフローを示す図
【図7】動作を説明する図
【図8】従来例の構成を示すブロック図
【符号の説明】
1 入力装置
2 データ処理装置
3 記憶装置
4 データ処理装置
5 記憶装置
21 アプリケーションインストール手段
22 ダイナミックリンクライブラリ登録手段
23 アプリケーション起動手段
24 ダイナミックリンクライブラリリンク手段
31 アプリケーション記憶部
32 ダイナミックリンクライブラリ記憶部
33 アプリケーション起動情報記憶部
34 ダイナミックリンク情報記憶部
41 アプリケーションインストール手段
42 アプリケーション起動手段
43 ダイナミックリンクライブラリリンク手段
51 アプリケーション記憶部
52 ダイナミックリンクライブラリ記憶部
53 アプリケーション起動情報記憶部
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a dynamic link library control method, and more particularly to a dynamic link library control method, method, and recording medium for dynamically linking a dynamic link library corresponding to an application started from a mixture of different versions of a dynamic link library.
[0002]
[Prior art]
In the language used for application development, a runtime library is usually provided as a dynamic link library.
[0003]
Therefore, a dynamic link library such as a runtime library is included in the application package, and an application installation unit for installing the application and the dynamic link library is provided.
[0004]
However, the language runtime library is frequently upgraded to correct problems and add functions.
[0005]
Therefore, a dynamic link library having a different version is bundled due to a difference in application development time, and a user who installs a plurality of applications has to select one version from a plurality of dynamic link libraries.
[0006]
The prior art will be further described with reference to FIG.
[0007]
FIG. 8 is a block diagram showing a configuration of a conventional example.
[0008]
Referring to FIG. 8, the conventional example includes an input device 1, a data processing device 4, and a storage device 5, and the data processing device 4 includes an application installing unit 41, an application starting unit 42, a dynamic link library link unit 43, The storage device 5 includes an application storage unit 51, a dynamic link library storage unit 52, and an application startup information storage unit 53.
[0009]
The application installation unit 41 compares the version of the dynamic link library installed in the dynamic link library storage unit 52 with the version of the dynamic link library to be installed, and if a different version is to be installed, the fact is notified. Notify the user and ask the user to continue using the already installed dynamic link library or to install a new version of the dynamic link library.
[0010]
When a new installation of a different version of the dynamic link library is selected, the different version of the dynamic link library is stored in the dynamic link library storage unit 52.
[0011]
When the application started by the application starting unit 42 uses the dynamic link, the dynamic link library linking unit 43 links the unique dynamic link library stored in the dynamic link library storage unit 52.
[0012]
For example, there are two applications that dynamically link and execute a dynamic link library, application A works correctly in combination with the old version of the dynamic link library, and application B works correctly in combination with the new version of the dynamic link library. It shall be.
[0013]
When an old version of the dynamic link library is stored in the dynamic link library storage unit 52, the dynamic link library linking unit 43 dynamically links the old version of the dynamic link library when the application A is started by the application starting unit 42. , Application A operates correctly.
[0014]
Subsequently, when the application B is started, since the old version of the dynamic link library is stored in the dynamic link library storage unit 52, the old version of the dynamic link library is dynamically linked, and the application B does not operate properly.
[0015]
Therefore, before starting the application B, the application installation unit 41 stores the new version of the dynamic link library in the dynamic link library storage unit 52 again.
[0016]
Then, when the application B is started, a new version of the dynamic link library is dynamically linked, and the application B operates correctly.
[0017]
Thereafter, when the application A is started again, the old version of the dynamic link library is stored in the dynamic link library storage unit 52 again.
[0018]
In this way, the version of the dynamic link library used by the application is stored in the dynamic link library storage unit 52 each time.
[0019]
Alternatively, there is a method of separating the storage location of the dynamic link library in order to avoid version conflict of the dynamic link library (this configuration is not shown).
[0020]
In this method, a dynamic link library related to the application is stored in the same storage location as the application.
[0021]
[Problems to be solved by the invention]
However, the above-described conventional technology has the following problems.
[0022]
That is, since only one version of the dynamic link library can be alternatively stored in the dynamic link library storage unit, the version of the dynamic link library used by the application must be stored in the dynamic link library storage unit each time. The operation is complicated and erroneous operation is likely to occur. If the application is executed without being stored correctly, the application will malfunction and cause a failure.
[0023]
When the storage location of the dynamic link library is stored separately, even if only one dynamic link library needs to exist, the same number of applications using the same dynamic link library exists. Storage space increases.
[0024]
An object of the present invention is to provide a dynamic link library control method, method, and recording medium for dynamically linking a correct dynamic link library to an application even when a plurality of applications need to dynamically link different versions of the dynamic link library. Is to do.
[0025]
[Means for Solving the Problems]
The dynamic link library control method of the first invention of the present application is as follows. An application storage unit that stores an application, a dynamic link library storage unit that stores a dynamic link library, an application startup information storage unit that registers application startup information, and dynamic link information that registers correspondence information between the application and the dynamic link library Input means for giving instructions to an application installing means and an application activating means, and an application designated by the input means is stored in the application storage part, and a storage location is used as the application activating information as the application activating information. Application installation means for registering in the storage unit and temporarily storing the dynamic link library in the dynamic link library storage unit; The temporarily stored dynamic link library is permanently stored in the dynamic link library storage unit, and correspondence information between the application stored by the application installation unit and the fully stored dynamic link library is registered in the dynamic link information storage unit. Dynamic link library registering means, application starting means for loading an application specified by the input means from the application storage section based on application starting information in the application starting information storage section, and starting and executing the application; When the application started by the application requests a dynamic link, a pair of a caller application name and the dynamic link information storage unit A dynamic link library link means for dynamically linked to the application loaded on the basis of the information the dynamic link library from the dynamic link library storage unit, It is characterized by having.
[0026]
The dynamic link library control method of the second invention of the present application is as follows. In the first invention, the dynamic link library storage unit is divided and managed into two parts, a temporary storage area where the dynamic link library is temporarily stored and a main storage area where the dynamic link library is permanently stored. It is characterized by the following.
[0027]
The dynamic link library control method according to the third invention of the present application The main storage area has a structure capable of storing a dynamic link library having the same name. It is characterized by the following.
[0028]
The dynamic link library control method of the fourth invention of the present application is as follows. In the first invention, the dynamic link library registration means compares the temporarily stored dynamic link library with the already stored dynamic link library, and has the same name and the same contents as the temporarily stored dynamic link library. The temporary-stored dynamic link library is permanently stored when none exists It is characterized by the following.
[0029]
The dynamic link library control method of the fifth invention of the present application is as follows. In the first invention, the correspondence information includes the application name, the name of the book-stored dynamic link library, and the location of the book-stored dynamic link library. It is characterized by the following.
[0030]
Dynamic link library control of the sixth invention of the present application Method Is The application is stored in the application storage unit, the application name and the application storage location are registered in the application startup information storage unit as application startup information, and the dynamic link library is temporarily stored in the dynamic link library storage unit. A library is compared with a dynamic link library already stored in the dynamic link library storage unit, and when there is no library having the same name and the same content as the temporarily stored dynamic link library, the temporarily stored dynamic link library is not found. Is stored in a dynamic link library storage unit, and the application name, the dynamically stored library name, and the dynamically stored dynamic link library are stored. The storage location of the library is registered in the dynamic link information storage unit as correspondence information, the application specified to be started is loaded from the application storage unit with reference to the application start information, and is started and executed. When requesting, refer to the correspondence information using the application name as a key, load the dynamic link library registered in the correspondence information from the dynamic link library storage unit, and dynamically link to the application, It is characterized by the following.
[0031]
The seventh invention of the present application recoding media Is An application storage process for storing an application in an application storage unit and registering the application name and the application storage location in the application startup information storage unit as application startup information, and a dynamic link library temporary storage for temporarily storing a dynamic link library in the dynamic link library storage unit. The storing process compares the temporarily stored dynamic link library with the dynamic link library already stored in the dynamic link library storage unit, and there is a dynamic link library having the same name and the same content as the temporarily stored dynamic link library. Dynamic link library book storage for temporarily storing the temporarily stored dynamic link library in the dynamic link library storage unit when not A correspondence information registration process of registering the application name, the book-stored dynamic link library name and the book-stored dynamic link library storage location in the dynamic link information storage unit as correspondence information; An application start-up process for loading and executing the application from the application storage unit with reference to the application start-up information, and corresponding information referring to the corresponding information by using the application name as a key when the running application requests a dynamic link Reference processing; and dynamic link processing of loading the dynamic link library registered in the correspondence information from the dynamic link library storage unit and dynamically linking the application to the application. Recording a program to be executed by the computer It is characterized by the following.
[0033]
BEST MODE FOR CARRYING OUT THE INVENTION
A feature of the present invention is that a dynamic link library having the same dynamic link library name but different contents, that is, a dynamic link library having a different version is stored in the same dynamic link library storage unit, and a version of the dynamic link library corresponding to the started application is stored. Is to select and link dynamically.
[0034]
Embodiments of the present invention will be described in detail with reference to the drawings.
[0035]
FIG. 1 is a block diagram showing a configuration of an embodiment of the present invention.
[0036]
FIG. 2 is a diagram illustrating a dynamic link library storage unit.
[0037]
FIG. 3 is a diagram showing the structure of the application activation information.
[0038]
FIG. 4 is a diagram showing the structure of the correspondence information.
[0039]
Referring to FIG. 1, the dynamic link library control method of the present invention includes an input device 1, a data processing device 2, and a storage device 3.
[0040]
The input device 1 is a device for giving an instruction to the data processing device 2, and is a keyboard or the like.
[0041]
The data processing device 2 includes an application installation unit 21, a dynamic link library registration unit 22, an application activation unit 23, and a dynamic link library link unit 24.
[0042]
The application installation unit 21 stores an application program (hereinafter simply referred to as an application) specified by the input device 1 from an installation device (not shown) in the application storage unit 31 and uses the storage location as application startup information as application startup information. The information is registered in the information storage unit 33. The application installing unit 21 stores (temporarily stores) the dynamic link library in the dynamic link library storage unit 32 from an installation device (not shown).
[0043]
The dynamic link library registration unit 22 is called continuously when the application installation unit 21 ends. The dynamic link library registration unit 22 stores and manages the storage locations separately in the dynamic link library storage unit 32 so that the dynamic link libraries having the same dynamic link library name and different contents coexist in the dynamic link library storage unit 32. I do.
[0044]
The dynamic link library registration unit 22 changes the storage location of the dynamic link library temporarily stored in the dynamic link library storage unit 32 by the application installation unit 21 and permanently stores the dynamic link library. Furthermore, the correspondence information between the application name stored by the application installation unit 21 and the dynamic link library information (dynamic link library name and dynamic link library storage location) of the dynamically stored dynamic link library is registered in the dynamic link information storage unit 34. .
[0045]
The application activating unit 23 loads the application specified by the input unit 1 from the application storage unit 31 based on the application activation information registered in the application activation information storage unit 33 by the application installing unit 21 and activates the application.
[0046]
The dynamic link library link means 24 is given control when an application started by the application starting means 23 requests a dynamic link.
[0047]
The dynamic link library link unit 24 loads an appropriate dynamic link library from the dynamic link library storage unit 32 based on the caller application name and the correspondence information registered in the dynamic link information storage unit 34 by the dynamic link library registration unit 22. Link dynamically to the application.
[0048]
The storage device 3 is a device that stores information, and includes an application storage unit 31, a dynamic link library storage unit 32, an application activation information storage unit 33, and a dynamic link information storage unit 34.
[0049]
The application storage unit 31 is an area for storing an application. The application is stored by the application installation unit 21.
[0050]
The dynamic link library storage unit 32 is an area for storing a dynamic link library. The dynamic link library registration means 22 stores and manages the dynamic link libraries having the same name so that they can coexist.
[0051]
FIG. 2A shows the structure of the dynamic link library storage unit 32. Referring to FIG. 2A, the dynamic link library storage unit 32 is divided into a temporary storage area and a main storage area. When storing the dynamic link library, the dynamic link library registration means 22 first stores the dynamic link library in the temporary storage area and checks whether or not the one having the same name and the same content already exists in the main storage area. If the file is not in the main storage area, the dynamic link library of the temporary storage area is moved to the main storage area. FIG. 2B shows an example of storage in the dynamic link library storage unit 32. Referring to FIG. 2B, in this storage area of the dynamic link library storage unit 32, three dynamic link libraries having dynamic link library names "AAA", "BBB", and "CCC" are stored.
[0052]
The application activation information storage unit 33 is an area for registering application activation information indicating where in the application storage unit 31 each application is installed. The application start information includes an application name and an application storage location in the application storage unit 31, and is registered by the application installation unit 21. FIG. 3 shows the structure of the application activation information.
[0053]
The dynamic link information storage unit 34 is an area for registering correspondence information between an application and a dynamic link library. The correspondence information includes an application name, a dynamic link library name, and a dynamic link library storage location in the dynamic link library storage unit 32, and is registered by the dynamic link library registration unit 22. FIG. 4 shows the structure of the correspondence information.
[0054]
The operation of the embodiment of the present invention will be described in detail with reference to FIG. 1, FIG. 5 and FIG.
[0055]
FIG. 5 is a diagram showing a flow of the operation of storing the application and the dynamic link library.
[0056]
FIG. 6 is a diagram showing a flow of the dynamic link operation.
[0057]
First, an operation of storing an application and a dynamic link library will be described.
[0058]
Referring to FIG. 5, the application installation unit 21 is activated by the input device 1, stores an application in the application storage unit 31, and registers the storage location in the application startup information storage unit 33. If there is a dynamic link library, the dynamic link library is temporarily stored in the dynamic link library storage unit 32 (step A1).
[0059]
The dynamic link library registration unit 22 is called continuously when the application installation unit 21 ends, and checks whether the dynamic link library is temporarily stored by the application installation unit 21 (step A2).
[0060]
When it is detected that the dynamic link library has been temporarily stored, it is checked whether a dynamic link library having the same dynamic link library name has already been registered (step A3).
[0061]
If a dynamic link library with the same dynamic link library name has already been registered, it is checked whether the contents match (step A4).
[0062]
When both the dynamic link library name and the content are completely the same, the corresponding information is formed from the stored information of the already registered dynamic link library and registered in the dynamic link information storage unit 34 (step A5).
[0063]
If the dynamic link library name is new, or if the dynamic link library name is the same but the contents are different, the dynamic link library temporarily stored in step A1 is moved to a new location and permanently stored, and the corresponding information is composed of the new information. Then, it is registered in the dynamic link information storage unit 34 (step A6).
[0064]
Next, the operation of the dynamic link will be described.
[0065]
Referring to FIG. 6, the application starting unit 23 loads the application specified by the input device 1 from the application storage unit 31 and starts and executes the application. It is assumed that the activated application requests a dynamic link and operates (step B1).
[0066]
The running application requests a dynamic link, and the dynamic link library linking means 24 is activated (step B2).
[0067]
The dynamic link library linking unit 24 can store the dynamic link library having the same name in the dynamic link library storage unit 32 based on the correspondence information registered in the dynamic link information storage unit 34 and the dynamic link library installed together with the application. The link library is dynamically linked (step B3).
[0068]
After the dynamic link library is dynamically linked, the execution of the application is continued (step B4).
[0069]
The operation will be described in more detail with reference to FIG.
[0070]
FIG. 7 is a diagram illustrating the operation.
[0071]
As a premise for explaining the operation, it is assumed that each unit of the storage device 3 is as shown in FIGS.
[0072]
First, the premise will be described.
[0073]
FIG. 7A shows that the application “APR” is stored in the application storage unit 31 from the storage location “r” and the application “APS” is stored in the application storage unit 31 from the storage location “s”. .
[0074]
(B) indicates that the dynamic link library “DLLA” is stored in the dynamic link library storage unit 32 from the storage location “a”, and the dynamic link library “DLLB” is stored from the storage location “b”. .
[0075]
(C) shows the application activation information registered in the application activation information storage unit 33.
[0076]
(D) shows the correspondence information registered in the dynamic link information storage unit 34.
[0077]
Next, installation of a new application will be described.
[0078]
The new application “APT” is stored in the application storage unit 31 by the application installation unit 21. FIG. 7E shows that the application “APT” has been stored from the storage location “t” of the application storage unit 31. FIG. 7G shows that the application activation information of the application “APT” has been added to the application activation information storage unit 33.
[0079]
It is assumed that a dynamic link library "DLLA" is included in the application "APT". Therefore, the application installing unit 21 stores the dynamic link library “DLLA” in the temporary storage area of the dynamic link library storage unit 32.
[0080]
The dynamic link library registration unit 22 stores the contents of the dynamic link library “DLLA” stored in the temporary storage area from the dynamic link library of the same name already stored in the main storage area (storage location “a”). It is checked whether the contents are the same as the contents of the dynamic link library “DLLA”). In this case, it is assumed that the content is different from the dynamic link library “DLLA” stored in the storage location “a”.
[0081]
The dynamic link library registration unit 22 moves the dynamic link library “DLLA” stored in the temporary storage area to the main storage area. FIG. 7F shows that the dynamic link library “DLLA” has been stored from the storage location “c” of the dynamic link library storage unit 32. FIG. 7H shows that the corresponding information of the application “APT” and the dynamic link library “DLLA” has been added to the dynamic link information storage unit 34.
[0082]
Next, the execution of the newly installed application will be described.
[0083]
The application activating unit 23 loads the application “APT” from the storage location “t” of the application storage unit 31 with reference to the application activation information of the application “APT”, and executes the application.
[0084]
When the application "APT" requests a dynamic link during the execution of the application "APT", the dynamic link library link means 24 is activated.
[0085]
The dynamic link library linking unit 24 refers to the corresponding information in the dynamic link information storage unit 34 using the name of the application requesting the dynamic link as a key, and stores the dynamic information stored from the storage location “c” in the dynamic link library storage unit 32. The link library "DLLA" is loaded and dynamically linked.
[0086]
After the dynamic link, the execution of the application “APT” is continued.
[0087]
As described above, when the application started by the application starting unit 23 requests a dynamic link, the dynamic link library linking unit 24 generates an appropriate dynamic link library based on the correspondence information registered in the dynamic link information storage unit 34. By linking, dynamic link libraries having the same dynamic link library name but different contents can be linked to different applications and executed simultaneously.
[0088]
This has the effect of preventing in advance problems caused by incompatibility due to different versions between the application and the dynamic link library.
[0089]
Further, since the version is distinguished depending on the storage location of the dynamic link library, there is an advantage that no change is required for the application and the dynamic link library.
[0090]
In the above-described embodiment according to the present invention, a program or the like for executing the processing operation of the dynamic link library control method is recorded as data on a recording medium (not shown) such as a magnetic disk or an optical disk. The read data is used to operate the dynamic link library control method. As described above, the data for operating the dynamic link library control method according to the present invention is recorded on a recording medium, and the function of the dynamic link library control method can be realized by installing the recording medium.
[0091]
【The invention's effect】
A first effect of the present invention is that dynamic link libraries having the same dynamic link library name but different contents can be dynamically linked to different applications and executed simultaneously.
[0092]
The reason is that a means for storing different versions of the dynamic link library is provided, and a means for associating with the application at the time of the dynamic link is provided.
[0093]
A second effect of the present invention is that no change is required on the application side (application main body and dynamic link library). As a result, the present invention can be applied to already shipped applications.
[0094]
The reason is that a means for storing a different version of the dynamic link library is provided so as not to require a change on the application side, and a means for associating with the application at the time of the dynamic link is provided.
[0095]
A third effect of the present invention is that the storage space for the dynamic link library is minimized.
[0096]
The reason for this is that different versions of the dynamic link library are stored in the same dynamic link library storage unit, and a means is provided which can be commonly used by applications.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of an embodiment of the present invention.
FIG. 2 is a diagram illustrating a dynamic link library storage unit.
FIG. 3 is a diagram showing a structure of application start information.
FIG. 4 is a diagram showing a structure of correspondence information;
FIG. 5 is a diagram showing a flow of an application and a dynamic link library storing operation;
FIG. 6 is a diagram showing a flow of a dynamic link operation.
FIG. 7 is a diagram illustrating an operation.
FIG. 8 is a block diagram showing a configuration of a conventional example.
[Explanation of symbols]
1 Input device
2 Data processing device
3 Storage device
4 Data processing device
5 Storage device
21 Application Installation Method
22 Dynamic link library registration means
23 Application Startup Means
24 Dynamic link library linking means
31 Application storage unit
32 Dynamic Link Library Storage
33 Application Startup Information Storage
34 Dynamic Link Information Storage
41 Application Installation Method
42 Application Startup Means
43 Dynamic Link Library Link Means
51 Application storage unit
52 Dynamic Link Library Storage Unit
53 application startup information storage unit

Claims (7)

プリケーションを格納するアプリケーション記憶部と、
ダイナミックリンクライブラリを格納するダイナミックリンクライブラリ記憶部と、
アプリケーション起動情報を登録するアプリケーション起動情報記憶部と、
アプリケーションとダイナミックリンクライブラリとの対応情報を登録するダイナミックリンク情報記憶部と、を有し、
アプリケーションインストール手段とアプリケーション起動手段に指示を与える入力手段と、
前記入力手段によって指定されたアプリケーションを前記アプリケーション記憶部に格納し格納場所をアプリケーション起動情報として前記アプリケーション起動情報記憶部に登録しダイナミックリンクライブラリを前記ダイナミックリンクライブラリ記憶部に仮格納するアプリケーションインストール手段と、
前記仮格納されたダイナミックリンクライブラリを前記ダイナミックリンクライブラリ記憶部に本格納し前記アプリケーションインストール手段によって格納されたアプリケーションと前記本格納されたダイナミックリンクライブラリとの対応情報を前記ダイナミックリンク情報記憶部に登録するダイナミックリンクライブラリ登録手段と、
前記入力手段によって指定されたアプリケーションを前記アプリケーション起動情報記憶部のアプリケーション起動情報を基に前記アプリケーション記憶部からロードして起動実行するアプリケーション起動手段と、
前記アプリケーション起動手段によって起動されたアプリケーションがダイナミックリンクを要求したときに呼び出し元アプリケーション名と前記ダイナミックリンク情報記憶部の対応情報を基にダイナミックリンクライブラリを前記ダイナミックリンクライブラリ記憶部からロードしてアプリケーションにダイナミックリンクするダイナミックリンクライブラリリンク手段と、
を備えることを特徴とするダイナミックリンクライブラリ制御方式。
An application storage unit for storing the application,
A dynamic link library storage unit for storing the dynamic link library;
An application start information storage unit for registering application start information;
A dynamic link information storage unit for registering correspondence information between the application and the dynamic link library,
Input means for giving instructions to the application installing means and the application starting means;
Application installation means for storing the application specified by the input means in the application storage unit, registering the storage location in the application startup information storage unit as application startup information, and temporarily storing a dynamic link library in the dynamic link library storage unit; ,
The temporarily stored dynamic link library is permanently stored in the dynamic link library storage unit, and correspondence information between the application stored by the application installation unit and the fully stored dynamic link library is registered in the dynamic link information storage unit. Means for registering a dynamic link library,
Application launching means for loading and executing the application designated by the input means from the application storage unit based on the application launch information of the application launch information storage unit;
When the application started by the application starting means requests a dynamic link, a dynamic link library is loaded from the dynamic link library storage unit based on the caller application name and the corresponding information in the dynamic link information storage unit, and Dynamic link library link means for dynamically linking;
A dynamic link library control method, comprising:
前記ダイナミックリンクライブラリ記憶部は、前記ダイナミックリンクライブラリが仮格納される仮格納領域と前記ダイナミックリンクライブラリが本格納される本格納領域の2つに分割管理されることを特徴とする請求項記載のダイナミックリンクライブラリ制御方式。The dynamic link library storage unit, according to claim 1, characterized in that the temporary storage region and the dynamic-link library dynamic link library are temporarily stored is divided and managed into two of the storage area that is the stored Dynamic link library control method. 前記本格納領域は、同一名のダイナミックリンクライブラリを格納し得る構造を成すことを特徴とする請求項記載のダイナミックリンクライブラリ制御方式。 3. The dynamic link library control method according to claim 2 , wherein the main storage area has a structure capable of storing a dynamic link library having the same name. 前記ダイナミックリンクライブラリ登録手段は、前記仮格納されたダイナミックリンクライブラリと既に本格納されているダイナミックリンクライブラリとを比較し、前記仮格納されたダイナミックリンクライブラリと同一名かつ同一内容のものが存在しないときに、前記仮格納されたダイナミックリンクライブラリを本格納することを特徴とする請求項記載のダイナミックリンクライブラリ制御方式。The dynamic link library registration unit compares the temporarily stored dynamic link library with the already stored dynamic link library, and there is no one having the same name and the same content as the temporarily stored dynamic link library. when the dynamic link library control method according to claim 1, characterized in that the storing the temporary stored dynamic link library. 前記対応情報は、前記アプリケーション名と前記本格納されたダイナミックリンクライブラリ名と前記本格納されたダイナミックリンクライブラリ格納場所とから成ることを特徴とする請求項記載のダイナミックリンクライブラリ制御方式。The correspondence information, a dynamic link library control method according to claim 1, characterized in that it consists of the application name and the present stored as dynamic link library name the the present stored dynamic link library location. プリケーションをアプリケーション記憶部に格納してアプリケーション名とアプリケーション格納場所をアプリケーション起動情報としてアプリケーション起動情報記憶部に登録し、
ダイナミックリンクライブラリをダイナミックリンクライブラリ記憶部に仮格納し、
前記仮格納されたダイナミックリンクライブラリと既にダイナミックリンクライブラリ記憶部に本格納されているダイナミックリンクライブラリとを比較し前記仮格納されたダイナミックリンクライブラリと同一名かつ同一内容のものが存在しないときに前記仮格納されたダイナミックリンクライブラリをダイナミックリンクライブラリ記憶部に本格納し、
前記アプリケーション名と前記本格納されたダイナミックリンクライブラリ名と本格納されたダイナミックリンクライブラリ格納場所を対応情報としてダイナミックリンク情報記憶部に登録し、
起動指定されたアプリケーションを前記アプリケーション起動情報を参照してアプリケーション記憶部からロードして起動実行し、
前記実行中のアプリケーションがダイナミックリンクを要求したときに前記アプリケーション名をキーとして前記対応情報を参照し、
前記対応情報に登録されているダイナミックリンクライブラリを前記ダイナミックリンクライブラリ記憶部からロードしてアプリケーションにダイナミックリンクする、
ことを特徴とするダイナミックリンクライブラリ制御方法。
Storing an application to the application storage unit registered in the application activation information storage unit an application name and application storage location as the application starting information,
Temporarily store the dynamic link library in the dynamic link library storage unit,
The temporarily stored dynamic link library is compared with the dynamic link library already stored in the dynamic link library storage unit, and when there is no one having the same name and the same content as the temporarily stored dynamic link library, The temporarily stored dynamic link library is stored in the dynamic link library storage unit,
Register the application name, the book-stored dynamic link library name and the book-stored dynamic link library storage location in the dynamic link information storage unit as correspondence information,
The application specified to be started is loaded from the application storage unit with reference to the application start information and is started and executed,
When the running application requests a dynamic link, refer to the corresponding information with the application name as a key,
Loading the dynamic link library registered in the correspondence information from the dynamic link library storage unit and dynamically linking to the application ;
A method for controlling a dynamic link library, comprising:
アプリケーションをアプリケーション記憶部に格納してアプリケーション名とアプリケーション格納場所をアプリケーション起動情報としてアプリケーション起動情報記憶部に登録するアプリケーション格納処理と、
ダイナミックリンクライブラリをダイナミックリンクライブラリ記憶部に仮格納するダイナミックリンクライブラリ仮格納処理と、
前記仮格納されたダイナミックリンクライブラリと既にダイナミックリンクライブラリ記憶部に本格納されているダイナミックリンクライブラリとを比較し前記仮格納されたダイナミックリンクライブラリと同一名かつ同一内容のものが存在しないときに前記仮格納されたダイナミックリンクライブラリをダイナミックリンクライブラリ記憶部に本格納するダイナミックリンクライブラリ本格納処理と、
前記アプリケーション名と前記本格納されたダイナミックリンクライブラリ名と本格納されたダイナミックリンクライブラリ格納場所を対応情報としてダイナミックリンク情報記憶部に登録する対応情報登録処理と、
起動指定されたアプリケーションを前記アプリケーション起動情報を参照してアプリケーション記憶部からロードして起動実行するアプリケーション起動処理と、
前記実行中のアプリケーションがダイナミックリンクを要求したときに前記アプリケーション名をキーとして前記対応情報を参照する対応情報参照処理と、
前記対応情報に登録されているダイナミックリンクライブラリを前記ダイナミックリンクライブラリ記憶部からロードしてアプリケーションにダイナミックリンクするダイナミックリンク処理と、
をコンピュータに実行させるためのプログラムを記録したことを特徴とする記録媒体。
An application storage process of storing an application in an application storage unit and registering the application name and the application storage location in the application startup information storage unit as application startup information;
A dynamic link library temporary storage process for temporarily storing the dynamic link library in the dynamic link library storage unit;
The temporarily stored dynamic link library is compared with the dynamic link library already stored in the dynamic link library storage unit, and when there is no one having the same name and the same content as the temporarily stored dynamic link library, A dynamic link library main storing process of storing the temporarily stored dynamic link library in the dynamic link library storage unit;
Correspondence information registration processing for registering the application name, the book-stored dynamic link library name, and the book-stored dynamic link library storage location in the dynamic link information storage unit as correspondence information;
An application start-up process of starting and executing a specified application by referring to the application start-up information from the application storage unit and starting and executing the application;
Correspondence information reference processing for referring to the correspondence information using the application name as a key when the running application requests a dynamic link,
A dynamic link process of loading the dynamic link library registered in the correspondence information from the dynamic link library storage unit and dynamically linking to the application ;
Recording a program for causing a computer to execute the program.
JP33403099A 1999-11-25 1999-11-25 Dynamic link library control method, method and recording medium Expired - Fee Related JP3570940B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33403099A JP3570940B2 (en) 1999-11-25 1999-11-25 Dynamic link library control method, method and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33403099A JP3570940B2 (en) 1999-11-25 1999-11-25 Dynamic link library control method, method and recording medium

Publications (2)

Publication Number Publication Date
JP2001154831A JP2001154831A (en) 2001-06-08
JP3570940B2 true JP3570940B2 (en) 2004-09-29

Family

ID=18272728

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33403099A Expired - Fee Related JP3570940B2 (en) 1999-11-25 1999-11-25 Dynamic link library control method, method and recording medium

Country Status (1)

Country Link
JP (1) JP3570940B2 (en)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7769794B2 (en) 2003-03-24 2010-08-03 Microsoft Corporation User interface for a file system shell
US7823077B2 (en) 2003-03-24 2010-10-26 Microsoft Corporation System and method for user modification of metadata in a shell browser
US7421438B2 (en) 2004-04-29 2008-09-02 Microsoft Corporation Metadata editing control
US7627552B2 (en) 2003-03-27 2009-12-01 Microsoft Corporation System and method for filtering and organizing items based on common elements
US7712034B2 (en) 2003-03-24 2010-05-04 Microsoft Corporation System and method for shell browser
US7240292B2 (en) 2003-04-17 2007-07-03 Microsoft Corporation Virtual address bar user interface control
US7650575B2 (en) 2003-03-27 2010-01-19 Microsoft Corporation Rich drag drop user interface
US7925682B2 (en) 2003-03-27 2011-04-12 Microsoft Corporation System and method utilizing virtual folders
US7519951B2 (en) 2003-09-30 2009-04-14 International Business Machines Corporation Multi-attribute dynamic link library packaging
US8024335B2 (en) 2004-05-03 2011-09-20 Microsoft Corporation System and method for dynamically generating a selectable search extension
US20050177826A1 (en) * 2004-02-05 2005-08-11 Miller James S. Versioning support in object-oriented programming languages and tools
US7694236B2 (en) 2004-04-23 2010-04-06 Microsoft Corporation Stack icons representing multiple objects
US7657846B2 (en) 2004-04-23 2010-02-02 Microsoft Corporation System and method for displaying stack icons
US8707209B2 (en) 2004-04-29 2014-04-22 Microsoft Corporation Save preview representation of files being created
US8195646B2 (en) 2005-04-22 2012-06-05 Microsoft Corporation Systems, methods, and user interfaces for storing, searching, navigating, and retrieving electronic information
US7665028B2 (en) 2005-07-13 2010-02-16 Microsoft Corporation Rich drag drop user interface
JP5895616B2 (en) * 2012-03-09 2016-03-30 日本電気株式会社 Information processing apparatus and program execution method
JP6409514B2 (en) * 2014-11-10 2018-10-24 日本電気株式会社 Information processing apparatus, library loading method, and computer program
US9798537B2 (en) * 2015-09-14 2017-10-24 Mastercard International Incorporated Isolating applications with a segmented architecture
JP7103113B2 (en) * 2018-09-25 2022-07-20 コニカミノルタ株式会社 Image processing device, application inclusion library processing method and program
JP7103112B2 (en) * 2018-09-25 2022-07-20 コニカミノルタ株式会社 Image processing device, application inclusion library processing method and program

Also Published As

Publication number Publication date
JP2001154831A (en) 2001-06-08

Similar Documents

Publication Publication Date Title
JP3570940B2 (en) Dynamic link library control method, method and recording medium
US11681535B2 (en) Linking virtualized application namespaces at runtime
Salzman et al. The linux kernel module programming guide
US8074231B2 (en) Configuration of isolated extensions and device drivers
US6876996B2 (en) Method and apparatus for using a shared library mechanism to facilitate sharing of metadata
US5715456A (en) Method and apparatus for booting a computer system without pre-installing an operating system
KR100330532B1 (en) Dynamic Boot File System Selection Methods and Devices
KR101099337B1 (en) Driver-specific context for kernel-mode shimming
US8196128B2 (en) System and method for providing a filtering classloader in a computer environment
JP2850808B2 (en) Data processing device and data processing method
JP4275451B2 (en) Illegal memory access detection method and program thereof
JP2000148413A (en) Verification for configuration of storage device based on device identifier
JP2005284925A (en) Computer system and program update method
Buckley A model of dynamic binding in. NET
JP2017224012A (en) Information processing device, dynamic link program and program resumption method
JP3616588B2 (en) Micro program check system
JPH07175599A (en) Information processor
JP2002182931A (en) Common os system call method
JP2000293377A (en) Coexistence environment structuring method and recording medium where coexistence environment structuring program is recorded
KR100945151B1 (en) Mobile media device for effectively executing VM-based mobile application programs on external memory, and operating method for the same
JP2001222412A (en) Data processor
JP2004062547A (en) Recording medium
JP2001222432A (en) Program file load system
JPS61234433A (en) Software load device
JPH04219822A (en) File update system

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040316

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040510

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040608

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040622

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees