(57)【要約】【課題】複数のプラットフォームに対応して操作対象となるプログラムを操作することが可能なプログラムを提供する。【解決手段】同一の端末装置において動作して操作対象となるプログラムである目標プログラムが動作するプラットフォームを識別する第１の機能と、前記第１の機能により識別された前記プラットフォームに合わせて動作を行う第２の機能と、をコンピュータに実現させるためのプログラム。【選択図】図１
2017182202.tif 000002
【特許請求の範囲】
【請求項１】
プラットフォームを識別する第１の機能と、
前記第１の機能により識別された前記プラットフォームに合わせて動作を行う第２の機能と、
をコンピュータに実現させるためのプログラム。
【請求項２】
前記第１の機能は、目標プログラムが動作するプラットフォームを識別し、
前記第２の機能は、第１のプラットフォームに合った第１のプログラムが実行されているときに、前記第１の機能により識別された前記プラットフォームが前記第１のプラットフォームではないと判定した場合に、前記第１の機能により識別された前記プラットフォームに対応する第２のプラットフォームに合った第２のプログラムを実行する、
請求項１に記載のプログラム。
【請求項３】
前記第２の機能は、前記第１のプログラムのファイルおよび前記第２のプログラムのファイルを生成する、
請求項２に記載のプログラム。
【請求項４】
前記第１のプログラムの情報および前記第２のプログラムの情報を含む、
請求項３に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムに関する。
【背景技術】
【０００２】
例えば、アプリケーション開発環境において、プロジェクトのバージョンを関連付けるテーブルが不要となる技術が知られている（特許文献１参照。）。この技術では、プラットフォームが複数バージョンある場合に、それらすべてのプラットフォームに共通に必要とされるライブラリを抽出し、ターゲットとなるプラットフォーム（プロジェクトのバージョン）に対応したファイルを探索することが行われる（特許文献１の段落００２０〜００２１参照。）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−１６２０６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来では、複数のプラットフォームのそれぞれに対応するプログラムを実行するために、それぞれのプラットフォームに対応するファイルを探索する等の煩雑な処理が必要となる場合があった。
【０００５】
本発明の実施形態は、このような事情に鑑み、対象のプラットフォームに合わせて実行プログラムを切り替えることが可能なプログラムを提供する。
【課題を解決するための手段】
【０００６】
本発明の実施形態に係るプログラムは、プラットフォームを識別する第１の機能と、前記第１の機能により識別された前記プラットフォームに合わせて動作を行う第２の機能と、をコンピュータに実現させるためのプログラムである。
【０００７】
本発明の一態様に係るプログラムにおいて、前記第１の機能は、目標プログラムが動作するプラットフォームを識別し、前記第２の機能は、第１のプラットフォームに合った第１のプログラムが実行されているときに、前記第１の機能により識別された前記プラットフォームが前記第１のプラットフォームではないと判定した場合に、前記第１の機能により識別された前記プラットフォームに対応する第２のプラットフォームに合った第２のプログラムを実行する、構成が用いられてもよい。
【０００８】
本発明の一態様に係るプログラムにおいて、前記第２の機能は、前記第１のプログラムのファイルおよび前記第２のプログラムのファイルを生成する、構成が用いられてもよい。
【０００９】
本発明の一態様に係るプログラムにおいて、前記第１のプログラムの情報および前記第２のプログラムの情報を含む、構成が用いられてもよい。
【発明の効果】
【００１０】
上記したプログラムによれば、対象のプラットフォームに合わせて実行プログラムを切り替えることが可能である。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態に係る情報処理システムの概略的な構成例を示す図である。
【図２】本発明の一実施形態に係る端末装置の概略的な構成例を示す図である。
【図３】本発明の一実施形態に係るプログラムの概略的なイメージを示す図である。
【図４】本発明の一実施形態に係るプログラムを用いて行われる処理の手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
本発明の実施形態について図面を参照して詳細に説明する。
【００１３】
［情報処理システムの構成例の説明］
図１は、本発明の一実施形態に係る情報処理システム１１の概略的な構成例を示す図である。
情報処理システム１１は、複数の端末装置２１〜２５と、ネットワーク３１を備える。各端末装置２１〜２５は、ネットワーク３１に接続されている。
各端末装置２１〜２５は、コンピュータなどである。
ネットワーク３１は、インターネットなどである。
【００１４】
ここで、図１の例では、複数の端末装置２１〜２５として、５個の端末装置２１〜２５を示したが、端末装置の数は任意であってもよい。
また、図１の例では、１個のネットワーク３１を示したが、ネットワークの数は任意であってもよい。
また、情報処理システム１１の構成は、他の構成であってもよい。
また、本実施形態では、端末装置２１〜２５がネットワーク３１に接続される例を示すが、他の構成例として、端末装置２１〜２５がネットワーク３１に接続されなくてもよい。
【００１５】
［端末装置の構成例の説明］
図２は、本発明の一実施形態に係る端末装置２１の概略的な構成例を示す図である。
ここで、本実施形態では、各端末装置２１〜２５について、概略的な構成は同様である。このため、本実施形態では、端末装置２１を例として、構成例および動作例を示す。
端末装置２１は、プロセッサ１０１と、メモリ１０２と、ネットワークインターフェイス１０３と、操作部１０４と、表示部１０５と、記憶装置１０６と、入出力インターフェイス１０７と、これらを接続するバス１１１を備える。
【００１６】
プロセッサ１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などから構成されており、プログラムを実行することで、当該プログラムに規定された処理を実行する。
メモリ１０２は、揮発性の記憶部であり、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などから構成されており、データを一時的に記憶する。ＲＡＭとしては、例えば、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）が用いられてもよい。
ネットワークインターフェイス１０３は、外部のネットワーク（本実施形態では、ネットワーク３１）と接続するインターフェイスである。
操作部１０４は、キーボード、マウスなどのうちの１以上から構成されており、人（ユーザ）により行われる操作を受け付ける。
表示部１０５は、画面を有しており、情報を当該画面に表示出力する。
記憶装置１０６は、不揮発性の記憶部であり、例えば、ハードディスクなどから構成されており、データを記憶する。
入出力インターフェイス１０７は、外部の記録媒体などと接続するインターフェイスである。
【００１７】
［実施形態の背景の説明］
まず、実施形態の背景の技術について説明する。
例えば、アプリケーション開発および実行環境であるドットネットフレームワーク（．ＮＥＴ  Ｆｒａｍｅｗｏｒｋ）の上で動作するプログラムでは、実行対象に合ったビルドタイプを指定することが可能である。実行対象のプラットフォームとなるオペレーティングシステム（ＯＳ：Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）として、３２ビットのオペレーティングシステム（３２ビットＯＳ）、または、６４ビットのオペレーティングシステム（６４ビットＯＳ）がある。
【００１８】
ビルドタイプの具体例として、ｘ８６と、ｘ６４と、ＡｎｙＣＰＵを示す。
＜ｘ８６＞
ｘ８６は、３２ビットＯＳまたは６４ビットＯＳのうちのいずれにおいても、３２ビットプロセスとして動作する。なお、ｘ８６は、６４ビットＯＳでは、エミュレーションレイヤー・サブシステムであるＷＯＷ６４で動作する。
＜ｘ６４＞
ｘ６４は、３２ビットＯＳでは動作が不可能である。ｘ６４は、６４ビットＯＳでは６４ビットプロセスとして動作する。
＜ＡｎｙＣＰＵ＞
ＡｎｙＣＰＵは、３２ビットＯＳでは３２ビットプロセスとして動作し、６４ビットＯＳでは６４ビットプロセスとして動作する。
【００１９】
上記のことから、６４ビットＯＳでは、３２ビットプロセスと６４ビットプロセスが混在することになる。具体例として、インターネットエクスプローラ（登録商標）（以下、「ＩＥ」ともいう。）のように、一般的に使用されているプログラムにおいても、３２ビットプロセスと６４ビットプロセスの両方の動作が存在する。
ここで、３２ビットプロセスと６４ビットプロセスとの間での情報のやり取りあるいは操作には、ＯＳレベルで一定の制限が行われている。このため、例えば、３２ビットプロセスで動作しているプログラムから、６４ビットプロセスで動作しているプログラムの情報を取得しようとするときに、あるいは、３２ビットプロセスで動作しているプログラムから、６４ビットプロセスで動作しているプログラムに対して何らかの操作を行おうとするときに、エラーになる場合が存在する。
【００２０】
本実施形態では、起動中のＩＥのプロセス（ＩＥプロセス）を操作して通信を確立する機能を有するプログラムを例として説明する。
このようなプログラムは、上記した制限によって、６４ビットＯＳでは、当該プログラムが動作するプラットフォームと、ＩＥが動作しているプラットフォームとが異なると、ＩＥを操作することができない状況が発生する。具体例として、当該プログラムが６４ビットプロセスで動作している一方、ＩＥが３２ビットプロセスで動作していると、当該プログラムからＩＥにアクセスすることができない。
【００２１】
［実施形態に係るプログラムの説明］
本実施形態に係るプログラム（以下で、「本プログラム」ともいう。）について説明する。
以下で、ＩＥや本プログラムが動作するプロセスのプラットフォームを「動作プラットフォーム」ともいう。
ＩＥについて、６４ビットＯＳでは、設定値を一つ変えるのみで３２ビットプロセスと６４ビットプロセスとが切り替わることが把握された（例えば、ＩＥ１１）。このため、ＩＥが３２ビットと６４ビットのいずれのプロセスとして動作しているかは、環境によって異なる可能性がある。
そこで、本プログラムは、動作中のＩＥをチェックし、当該ＩＥが動作しているプラットフォーム（動作プラットフォーム）が現在において本プログラムが対象としている動作プラットフォームと一致しない場合には、当該ＩＥが動作しているプラットフォーム（動作プラットフォーム）に合わせて起動し直す機能を有する。これにより、本プログラムは、本プログラムを実行する端末装置２１の設定にかかわらず（つまり、ＩＥが３２ビットプロセスと６４ビットプロセスとのうちのいずれで動作していても）、ＩＥを操作することが可能である。
【００２２】
本プログラムは、次の＜第１の組み合わせ＞〜＜第３の組み合わせ＞になるように、動作するモジュールを動的に切り替える。
＜第１の組み合わせ＞
３２ビットＯＳと、ＡｎｙＣＰＵ向けビルドとの組み合わせである。この場合、本プログラムは、３２ビットプロセスとして動作する。
＜第２の組み合わせ＞
６４ビットＯＳでＩＥが３２ビットプロセスで動作する状態と、ｘ８６向けビルドとの組み合わせである。この場合、本プログラムは、３２ビットプロセスとして動作する。
＜第３の組み合わせ＞
６４ビットＯＳでＩＥが６４ビットプロセスで動作する状態と、ＡｎｙＣＰＵ向けビルドとの組み合わせである。この場合、本プログラムは、６４ビットプロセスとして動作する。
【００２３】
図３は、本発明の一実施形態に係るプログラム（本プログラム２０１）の概略的なイメージを示す図である。
本プログラム２０１は、ＡｎｙＣＰＵに関するリソース（以下、「ＡｎｙＣＰＵリソース」ともいう。）２２１と、ｘ８６に関するリソース（以下、「ｘ８６リソース」ともいう。）２２２を含む。
本プログラム２０１は、ＡｎｙＣＰＵに対応して動作するプログラム（以下で、「ＡｎｙＣＰＵ対応プログラム」ともいう。）を生成する機能と、ｘ８６に対応して動作するプログラム（以下で、「ｘ８６対応プログラム」ともいう。）を生成する機能を有する。ＡｎｙＣＰＵ対応プログラムは、３２ビットプロセスまたは６４ビットプロセスで動作する。ｘ８６対応プログラムは、３２ビットプロセスで動作する。
【００２４】
図４は、本発明の一実施形態に係るプログラム（本プログラム２０１）を用いて行われる処理の手順の一例を示すフローチャートである。
本実施形態では、端末装置２１において、プロセッサ１０１が、メモリ１０２を用いて、記憶装置１０６に記憶された本プログラム２０１を読み出して実行する場合を示す。
【００２５】
まず、動作プラットフォームを動的に切り替え可能とする本プログラム２０１について、ＡｎｙＣＰＵを対象とするモジュール（ＡｎｙＣＰＵリソース２２１）のビルド時に、ｘ８６向けにビルドしたモジュールをリソース（ｘ８６リソース２２２）として埋め込む。
ここで、本実施形態では、ＡｎｙＣＰＵ向けビルドと、ｘ８６向けビルドとで、実質的な処理の中身は同等である。これら２種類のビルドにおいて、例えば、ソースコードを共有してもよい。
【００２６】
（ステップＳ１）
端末装置２１において、本プログラム２０１を実行する。
【００２７】
（ステップＳ２）
本プログラム２０１は、実行されると、端末装置２１において動作している目標となるプログラム（以下で、「目標プログラム」ともいう。）の動作プラットフォームを判定する。本実施形態では、目標プログラムはＩＥである。
具体的には、本プログラム２０１は、端末装置２１における機能として存在するシェルウインドウ一覧を取得する。そして、本プログラム２０１は、取得したシェルウインドウ一覧において、ファイルパスを順次チェックして、ＩＥのプログラム名であるファイルパスを探索する。ＩＥのプログラム名であるファイルパスを発見した場合、本プログラム２０１は、発見したＩＥの動作プラットフォームを判定する。本実施形態では、本プログラム２０１は、ファイルパスに「ｘ８６」という文字列が含まれている場合には３２ビットプロセスであると判定し、他の場合には６４ビットプロセスであると判定する。
【００２８】
なお、ＩＥのプログラム名であるファイルパスを発見しなかった場合、本プログラム２０１は、その時点ではＩＥが起動していないと判定して、一定の時間間隔（例えば、数秒）おきのタイミングでファイルパスのチェックを繰り返して行い、ＩＥが起動するまで待機する。
【００２９】
（ステップＳ３）
本プログラム２０１は、本プログラム２０１に起因して実行中のプログラム（本実施形態では、ＡｎｙＣＰＵ対応プログラム、または、ｘ８６対応プログラム）の動作プラットフォームを判定する。
具体的には、本実施形態では、ＡｎｙＣＰＵ対応プログラムとｘ８６対応プログラムとで、プログラムの名称を異ならせている。そして、本プログラム２０１は、実行中のプログラムの名称に基づいて、動作プラットフォームを判定する。
【００３０】
（ステップＳ４）
本プログラム２０１は、目標プログラムの動作プラットフォームと実行中のプログラムの動作プラットフォームとが一致するか否かを判定する。
これらの動作プラットフォームが一致する場合には（ステップＳ４：ＹＥＳ）、本フローの処理が終了する。この場合、実行中のプログラムが、発見されたＩＥを操作対象として利用する。
【００３１】
（ステップＳ５）
一方、これらの動作プラットフォームが一致しない場合には（ステップＳ４：ＮＯ）、本プログラム２０１は、切り替え先のプログラムが存在するか否かを判定する。
ここで、これらの動作プラットフォームが一致しない場合としては、本実施形態では、端末装置２１において６４ビットＯＳが使用されており、且つ、目標プログラムの動作プラットフォームと実行中のプログラムの動作プラットフォームとが一致しない場合がある。
この場合、本プログラム２０１は、切り替え先のプログラム（本実施形態では、ＡｎｙＣＰＵ対応プログラム、または、ｘ８６対応プログラム）が既にファイルとして存在するか否かを判定する。ここで、本実施形態では、ＡｎｙＣＰＵ対応プログラムおよびｘ８６対応プログラムが同一のフォルダに出力される構成としてあり、本プログラム２０１は当該フォルダをチェックする。
【００３２】
切り替え先のプログラムは、現在の実行中のプログラムがＡｎｙＣＰＵ対応プログラムである場合には、ｘ８６対応プログラムである。同様に、切り替え先のプログラムは、現在の実行中のプログラムがｘ８６対応プログラムである場合には、ＡｎｙＣＰＵ対応プログラムである。
【００３３】
（ステップＳ６）
切り替え先のプログラムが存在しない場合（ステップＳ５：ＮＯ）、本プログラム２０１は、切り替え先のプログラムを生成する。
本実施形態では、本プログラム２０１は、本プログラム２０１のリソースとして埋め込まれている切り替え先のプログラムをファイルに出力する。本プログラム２０１は、ＡｎｙＣＰＵ対応プログラムとｘ８６対応プログラムとで、それぞれに定められた別の名称のファイルを同一のフォルダに出力する。
【００３４】
（ステップＳ７）
ステップＳ５において切り替え先のプログラムが存在した場合（ステップＳ５：ＹＥＳ）、または、ステップＳ６において切り替え先のプログラムを生成した場合、本プログラム２０１は、切り替え先のプログラムを新規プロセスとして実行する。
【００３５】
（ステップＳ８）
そして、本プログラム２０１は、切り替え元のプログラム（実行中であったプログラム）を終了する。
【００３６】
なお、本プログラム２０１は、例えば、最初に実行されたときに（ステップＳ１のときに）、ＡｎｙＣＰＵ対応プログラム、または、ｘ８６対応プログラムのうちの一方または両方を生成してもよい。
【００３７】
［実施形態のまとめ］
以上のように、本実施形態に係るプログラム（本プログラム２０１）では、対象のプラットフォームに合わせて実行プログラムを切り替えることが可能であり、複数のプラットフォームで動作を行うことが可能である。
【００３８】
ここで、本実施形態では、目標プログラムとして、ＩＥを用いたが、他の構成例として、目標プログラムとして様々なプログラムが用いられてもよい。
また、本実施形態に係るプログラム（本プログラム２０１）は、目標プログラムを操作する機能を有したが、他の構成例として、目標プログラムに関する他の機能を有してもよい。
【００３９】
なお、一例として、本実施形態に係るプログラム（本プログラム２０１）は、端末装置２１の出荷時に当該端末装置２１の記憶装置１０６にあらかじめ記憶されてもよい。
他の例として、本実施形態に係るプログラム（本プログラム２０１）は、他の端末装置（図１の例では、端末装置２２〜２５）または他のサーバ装置などからネットワーク３１を介して端末装置２１に送信されることで、当該端末装置２１により受信されて、当該端末装置２１の記憶装置１０６に記憶されてもよい。
他の例として、本実施形態に係るプログラム（本プログラム２０１）は、記録媒体から入出力インターフェイス１０７を介して端末装置２１に入力されることで、当該端末装置２１の記憶装置１０６に記憶されてもよい。
【００４０】
また、本実施形態では、端末装置２１において、当該端末装置２１が本実施形態に係るプログラム（本プログラム２０１）、ＡｎｙＣＰＵ対応プログラム、およびｘ８６対応プログラムを実行する構成を示したが、他の構成例として、これらのうちの１以上のプログラムを端末装置２１の外部の装置により実行させてもよい。
【００４１】
一構成例として、プラットフォームを識別する第１の機能（図４の例では、ステップＳ２〜ステップＳ４の機能）と、前記第１の機能により識別されたプラットフォームに合わせて動作を行う第２の機能（図４の例では、ステップＳ５〜ステップＳ８の機能）と、をコンピュータ（実施形態では、端末装置２１を構成するコンピュータ）に実現させるためのプログラム（実施形態では、本プログラム２０１）である。
一構成例として、第１の機能は、目標プログラム（実施形態では、ＩＥのプログラム）が動作するプラットフォームを識別し、第２の機能は、第１のプラットフォーム（実施形態では、ＡｎｙＣＰＵまたはｘ８６に対応するプラットフォーム）に合った第１のプログラム（実施形態では、ＡｎｙＣＰＵ対応プログラムまたはｘ８６対応プログラム）が実行されているときに、前記第１の機能により識別されたプラットフォームが第１のプラットフォームではないと判定した場合に、前記第１の機能により識別されたプラットフォームに対応する第２のプラットフォーム（実施形態では、ｘ８６またはＡｎｙＣＰＵに対応するプラットフォーム）に合った第２のプログラム（実施形態では、ｘ８６対応プログラムまたはＡｎｙＣＰＵ対応プログラム）を実行する。
一構成例として、第２の機能は、第１のプログラムのファイルおよび第２のプログラムのファイルを生成する（実施形態では、ファイルとして出力する）。
一構成例として、プログラム（実施形態では、本プログラム２０１）は、第１のプログラムの情報および第２のプログラムの情報を含む（実施形態では、リソースとして含む）。
【００４２】
以上のように、実施形態に係る装置（例えば、端末装置２１〜２５）の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体（記憶媒体）に記録（記憶）して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、処理を行うことができる。
なお、ここでいう「コンピュータシステム」とは、オペレーティングシステムあるいは周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリ等の書き込み可能な不揮発性メモリ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
さらに、「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークあるいは電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えば、ＤＲＡＭ）のように、一定時間プログラムを保持しているものも含む。
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）あるいは電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【００４３】
なお、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態には限定されない。本発明の精神及び範囲から逸脱することなく様々に変更したり代替態様を採用したりすることが可能なことは、当業者に明らかである。
【符号の説明】
【００４４】
１１…情報処理システム、２１〜２５…端末装置、３１…ネットワーク、１０１…プロセッサ、１０２…メモリ、１０３…ネットワークインターフェイス、１０４…操作部、１０５…表示部、１０６…記憶装置、１０７…入出力インターフェイス、１１１…バス、２０１…プログラム、２２１…ＡｎｙＣＰＵリソース、２２２…ｘ８６リソース
【図１】
2017182202.tif 000003
【図２】
2017182202.tif 000004
【図３】
2017182202.tif 000005
【図４】
2017182202.tif 000006
【手続補正書】
【提出日】平成28年10月3日(2016.10.3)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
同一の端末装置において動作して操作対象となるプログラムである目標プログラムが動作するプラットフォームを識別する第１の機能と、
前記第１の機能により識別された前記プラットフォームに合わせて動作を行う第２の機能と、
をコンピュータに実現させるためのプログラム。
【請求項２】
前記第１の機能は、前記目標プログラムが動作するプラットフォームを識別し、
前記第２の機能は、第１のプラットフォームに合った第１のプログラムが実行されているときに、前記第１の機能により識別された前記プラットフォームが前記第１のプラットフォームではないと判定した場合に、前記第１の機能により識別された前記プラットフォームに対応する第２のプラットフォームに合った第２のプログラムを実行する、
請求項１に記載のプログラム。
【請求項３】
前記第２の機能は、前記第１のプログラムのファイルおよび前記第２のプログラムのファイルを生成する、
請求項２に記載のプログラム。
【請求項４】
前記第１のプログラムの情報および前記第２のプログラムの情報を含む、
請求項３に記載のプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
本発明の実施形態に係るプログラムは、同一の端末装置において動作して操作対象となるプログラムである目標プログラムが動作するプラットフォームを識別する第１の機能と、前記第１の機能により識別された前記プラットフォームに合わせて動作を行う第２の機能と、をコンピュータに実現させるためのプログラムである。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
本発明の一態様に係るプログラムにおいて、前記第１の機能は、前記目標プログラムが動作するプラットフォームを識別し、前記第２の機能は、第１のプラットフォームに合った第１のプログラムが実行されているときに、前記第１の機能により識別された前記プラットフォームが前記第１のプラットフォームではないと判定した場合に、前記第１の機能により識別された前記プラットフォームに対応する第２のプラットフォームに合った第２のプログラムを実行する、構成が用いられてもよい。
【手続補正書】
【提出日】平成29年2月14日(2017.2.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
プログラムであって、
自プログラムにより操作する対象となる他のプログラムである目標プログラムが動作するプラットフォームに応じた前記目標プログラムのプロセスの種類を識別する第１の機能と、
前記第１の機能により識別された前記目標プログラムのプロセスの種類が自プログラムのプロセスの第１の種類と整合しているか否かを判定する第２の機能と、
前記第２の機能により前記目標プログラムのプロセスの種類が自プログラムのプロセスの前記第１の種類と整合していないと判定された場合、前記目標プログラムのプロセスの種類と整合する第２の種類の自プログラムのプロセスを起動させ、自プログラムの前記第１の種類のプロセスを終了させる第３の機能と、
をコンピュータに実現させるためのプログラム。
【請求項２】
プログラムであって、
自プログラムにより操作する対象となる他のプログラムである目標プログラムが動作するプラットフォームに応じた前記目標プログラムのプロセスの種類を識別する第１の機能と、
前記第１の機能により識別された前記目標プログラムのプロセスの種類が自プログラムのプロセスの第１の種類と整合しているか否かを判定する第２の機能と、
前記第２の機能により前記目標プログラムのプロセスの種類が自プログラムのプロセスの前記第１の種類と整合していないと判定された場合、前記目標プログラムのプロセスの種類と整合する自プログラムのプログラムファイルを生成し、生成されたプログラムファイルに係る第２の種類のプロセスを起動させる第３の機能と、
をコンピュータに実現させるためのプログラム。
【請求項３】
前記第３の機能は、自プログラムの前記第２の種類のプロセスを起動させ、自プログラムの前記第１の種類のプロセスを終了させる、
請求項２に記載のプログラム。
【請求項４】
自プログラムは、前記第１の種類のプロセスおよび前記第２の種類のプロセスに係るプログラムのリソースを有する、
請求項１から請求項３のいずれか１項に記載のプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
本発明の実施形態に係るプログラムは、自プログラムにより操作する対象となる他のプログラムである目標プログラムが動作するプラットフォームに応じた前記目標プログラムのプロセスの種類を識別する第１の機能と、前記第１の機能により識別された前記目標プログラムのプロセスの種類が自プログラムのプロセスの第１の種類と整合しているか否かを判定する第２の機能と、前記第２の機能により前記目標プログラムのプロセスの種類が自プログラムのプロセスの前記第１の種類と整合していないと判定された場合、前記目標プログラムのプロセスの種類と整合する第２の種類の自プログラムのプロセスを起動させ、自プログラムの前記第１の種類のプロセスを終了させる第３の機能と、をコンピュータに実現させるためのプログラムである。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
本発明の実施形態に係るプログラムは、自プログラムにより操作する対象となる他のプログラムである目標プログラムが動作するプラットフォームに応じた前記目標プログラムのプロセスの種類を識別する第１の機能と、前記第１の機能により識別された前記目標プログラムのプロセスの種類が自プログラムのプロセスの第１の種類と整合しているか否かを判定する第２の機能と、前記第２の機能により前記目標プログラムのプロセスの種類が自プログラムのプロセスの前記第１の種類と整合していないと判定された場合、前記目標プログラムのプロセスの種類と整合する自プログラムのプログラムファイルを生成し、生成されたプログラムファイルに係る第２の種類のプロセスを起動させる第３の機能と、をコンピュータに実現させるためのプログラムである。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
本発明の一態様に係る前記のプログラムにおいて、前記第３の機能は、自プログラムの前記第２の種類のプロセスを起動させ、自プログラムの前記第１の種類のプロセスを終了させる、構成が用いられてもよい。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
本発明の一態様に係る以上のプログラムにおいて、自プログラムは、前記第１の種類のプロセスおよび前記第２の種類のプロセスに係るプログラムのリソースを有する、構成が用いられてもよい。
【手続補正６】
【補正対象書類名】要約書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【要約】
【要約】
【課題】複数のプラットフォームに対応して操作対象となるプログラムを操作することが可能なプログラムを提供する。
【解決手段】プログラムであって、自プログラムにより操作する対象となる他のプログラムである目標プログラムが動作するプラットフォームに応じた前記目標プログラムのプロセスの種類を識別する第１の機能と、前記第１の機能により識別された前記目標プログラムのプロセスの種類が自プログラムのプロセスの第１の種類と整合しているか否かを判定する第２の機能と、前記第２の機能により前記目標プログラムのプロセスの種類が自プログラムのプロセスの前記第１の種類と整合していないと判定された場合、前記目標プログラムのプロセスの種類と整合する第２の種類の自プログラムのプロセスを起動させ、自プログラムの前記第１の種類のプロセスを終了させる第３の機能と、をコンピュータに実現させるためのプログラム。
【選択図】図１