(57)【特許請求の範囲】
【請求項１】
アプリケーションからの要求に応じてドライバによる処理を実行する処理実行方法であって、
（ａ）前記ドライバが前記アプリケーションからディスプレイへの情報の表示を要求された際に前記アプリケーションの言語情報を前記ドライバが取得するステップと、
（ｂ）前記ステップ（ａ）で取得した言語情報に基づいて前記ドライバが前記ディスプレイに表示する表示言語の設定を行うステップと、
（ｃ）前記ステップ（ａ）で前記ドライバが要求された情報を前記ステップ（ｂ）で設定した表示言語で前記ディスプレイに表示するステップと、
を含み、
前記ステップ（ｂ）では、前記ドライバに記憶されている複数の文字コード及び複数の言語で記述された判定文字列のいずれかと前記取得した言語情報とが一致するか否かを判定し、両者が一致した場合、該一致した判定文字列の言語を前記表示言語に設定する、
処理実行方法。
【請求項２】
請求項１に記載のドライバによる処理実行方法であって、
（ｄ）前記ドライバが前記アプリケーションから情報の提供を要求された際に前記アプリケーションの言語情報を前記ドライバが取得するステップと、
（ｅ）前記ステップ（ｄ）で取得した言語情報に基づいて前記ドライバが前記アプリケーションに情報を提供する表示文字コード及び表示言語の設定を行うステップと、
（ｆ）前記ステップ（ｄ）で前記ドライバが要求された情報を前記ステップ（ｅ）で設定した表示文字コード及び表示言語で前記アプリケーションに提供するステップと、
を含む処理実行方法。
【請求項３】
前記ステップ（ｅ）では、前記ドライバに記憶されている複数の文字コード及び複数の言語で記述された判定文字列のいずれかと前記取得した言語情報とが一致するか否かを判定し、両者が一致した場合、該一致した判定文字列の文字コード及び言語を前記表示文字コード及び表示言語に設定する、
請求項２に記載の処理実行方法。
【請求項４】
前記アプリケーションの言語情報として前記アプリケーションのウィンドウタイトルを前記ドライバが取得する、
請求項１〜３のいずれか１項に記載の処理実行方法。
【請求項５】
コンピュータに請求項１〜４のいずれか１項に記載の処理実行方法を実行させるためのプログラム。
【請求項６】
アプリケーションからの要求に応じてドライバによる処理を実行する処理実行装置であって、
ディスプレイと、
前記ドライバが前記アプリケーションから前記ディスプレイへの情報の表示を要求された際に、前記アプリケーションの言語情報を取得し、該取得した言語情報に基づいて前記ドライバが前記ディスプレイに表示する表示言語の設定を行い、前記ドライバが要求された情報を該設定した表示言語で前記ディスプレイに表示する制御手段と、
を備え、
前記制御手段は、前記ドライバに記憶されている複数の文字コード及び複数の言語で記述された判定文字列のいずれかと前記取得した言語情報とが一致するか否かを判定し、両者が一致した場合、該一致した判定文字列の言語を前記表示言語に設定する、
処理実行装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理実行方法、そのプログラム及び処理実行装置に関する。
【背景技術】
【０００２】
コンピュータに接続されたプリンタやスキャナなどの種々の周辺機器を的確に動作させるためには、周辺機器に各々適合するドライバをインストールする必要がある。ドライバはコンピュータのユーザに周辺機器に関する情報を表示したりユーザからの指示を受け付けて周辺機器を制御したりするユーザインタフェース機能を有しており、このインタフェース機能により表示される文字列はユーザの希望する言語であることが望ましい。
【０００３】
そこで、コンピュータのオペレーティングシステム（ＯＳ）から取得した言語情報と一致する言語テーブルを周辺機器から取得することで表示画面の文字列をＯＳの言語と一致させる制御プログラムが提案されている（特許文献１参照）。
【特許文献１】特開２００４−３０２７９８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載の制御プログラムでは、アプリケーションから作成したファイルを印刷する際、アプリケーションとＯＳの表示言語とが異なる場合にアプリケーションとプリンタドライバとで言語の不一致が生じる可能性がある。例えば、ワードプロセッサ等のアプリケーションによる表示画面は英語であるがプリンタドライバにより表示される印刷設定画面は日本語である場合である。これは異なる言語を使用する複数のユーザがコンピュータを共用している場合に特に問題となる。
【０００５】
また、近年ではＯＳがサポートする言語数が大幅に増加しているため、アプリケーションとＯＳとの間での言語の不一致が起こりやすい状況になりつつあるといえる。
【０００６】
さらに、アプリケーションがサポートしている文字コードとプリンタドライバの文字コードが異なる場合には言語の不一致だけでなく文字化けが発生する可能性もある。
【０００７】
本発明は、上述した課題に鑑みなされたものであり、アプリケーションからの情報とドライバからの情報とを同一言語環境で表示することを主目的とする。
【課題を解決するための手段】
【０００８】
本発明は、上述の目的を達成するために以下の手段を採った。
【０００９】
本発明の第１の処理実行方法は、
アプリケーションからの要求に応じてドライバによる処理を実行する処理実行方法であって、
（ａ）前記ドライバが前記アプリケーションからディスプレイへの情報の表示を要求された際に前記アプリケーションの言語情報を前記ドライバが取得するステップと、
（ｂ）前記ステップ（ａ）で取得した言語情報に基づいて前記ドライバが前記ディスプレイに表示する表示言語の設定を行うステップと、
（ｃ）前記ステップ（ａ）で前記ドライバが要求された情報を前記ステップ（ｂ）で設定した表示言語で前記ディスプレイに表示するステップと、
を含むものである。
【００１０】
この処理実行方法では、ドライバがアプリケーションからディスプレイへの情報の表示を要求された際に、該表示を要求したアプリケーションから言語情報を取得し、該取得した言語情報に基づいて前記ディスプレイに表示する表示言語の設定を行い、該設定された表示言語で前記アプリケーションに要求された情報を前記ディスプレイに表示する処理を実行する。こうすることにより、ドライバはアプリケーションで使用されている言語と同じ言語（例えば、日本語，英語，中国語など）を表示言語に設定することができる。したがって、アプリケーションからの情報とドライバからの情報とを同一言語環境でディスプレイに表示することができる。
【００１１】
本発明の第１の処理実行方法において、前記ステップ（ｂ）では、前記ドライバに記憶されている複数の文字コード及び複数の言語で記述された判定文字列のいずれかと前記取得した言語情報とが一致するか否かを判定し、両者が一致した場合、該一致した判定文字列の言語を前記表示言語に設定してもよい。こうすれば、あらかじめ記憶した判定文字列と取得した言語情報とを比較するだけでアプリケーションと同じ言語を容易に判定して表示言語に設定することができる。
【００１２】
本発明の第１の処理実行方法は、（ｄ）前記ドライバが前記アプリケーションから情報の提供を要求された際に前記アプリケーションの言語情報を前記ドライバが取得するステップと、（ｅ）前記ステップ（ｄ）で取得した言語情報に基づいて前記ドライバが前記アプリケーションに情報を提供する表示文字コード及び表示言語の設定を行うステップと、（ｆ）前記ステップ（ｄ）で前記ドライバが要求された情報を前記ステップ（ｅ）で設定した表示文字コード及び表示言語で前記アプリケーションに提供するステップとを含んでもよい。こうすることにより、ドライバがアプリケーションから情報の提供を要求された場合でもドライバはアプリケーションで使用されている文字コード及び言語と同じものを表示文字コード及び表示言語に設定することができる。したがって、ドライバから提供された情報とアプリケーションの情報とを併せてアプリケーションがディスプレイに表示する場合にも文字化けすることなくかつ同一言語環境で表示することができる。
【００１３】
本発明の第１の処理実行方法において、前記ステップ（ｅ）では、前記ドライバに記憶されている複数の文字コード及び複数の言語で記述された判定文字列のいずれかと前記取得した言語情報とが一致するか否かを判定し、両者が一致した場合、該一致した判定文字列の文字コード及び言語を前記表示文字コード及び表示言語に設定してもよい。こうすれば、あらかじめ記憶した判定文字列と取得した言語情報とを比較するだけでアプリケーションと同じ文字コード及び言語を容易に判定して表示文字コード及び表示言語に設定することができる。
【００１４】
本発明の第１の処理実行方法において、前記ステップ（ａ）又は前記ステップ（ｄ）では、前記アプリケーションの言語情報として前記アプリケーションのウィンドウタイトル（アプリケーションが表示する操作・設定画面等のウィンドウのタイトル）を前記ドライバが取得してもよい。ドライバに情報の表示や提供を要求する際のアプリケーションのウィンドウタイトルは特定の単語に限定されているため、取得した言語情報に基づくドライバの表示文字コード及び表示言語の設定を容易に行うことができる。ここで、ウィンドウタイトルとしては、例えば、アプリケーションの言語が日本語であれば印刷時のウィンドウ画面に表示されるウィンドウタイトルは「印刷」、同様に英語であれば「Ｐｒｉｎｔ」などが挙げられる。
【００１５】
本発明の第２の処理実行方法は、
アプリケーションからの要求に応じてドライバによる処理を実行する処理実行方法であって、
（ｄ）前記ドライバが前記アプリケーションから情報の提供を要求された際に前記アプリケーションの言語情報を前記ドライバが取得するステップと、
（ｅ）前記ステップ（ｄ）で取得した言語情報に基づいて前記ドライバが前記アプリケーションに情報を提供する表示文字コード及び表示言語の設定を行うステップと、
（ｆ）前記ステップ（ｄ）で前記ドライバが要求された情報を前記ステップ（ｅ）で設定した表示文字コード及び表示言語で前記アプリケーションに提供するステップと、
を含むものである。
【００１６】
この処理実行方法では、ドライバがアプリケーションから情報の提供を要求された際に、該情報の提供を要求したアプリケーションから言語情報を取得し、該取得した言語情報に基づいて前記アプリケーションに情報を提供する表示文字コード及び表示言語の設定を行い、該設定された表示文字コード及び表示言語で前記アプリケーションに要求された情報を提供する処理を実行する。こうすることにより、ドライバがアプリケーションから情報の提供を要求された場合にドライバはアプリケーションで使用されている文字コード及び言語と同じものを表示文字コード及び表示言語に設定することができる。したがって、ドライバから提供された情報とアプリケーションの情報とを併せてアプリケーションがディスプレイに表示する場合に文字化けすることなくかつ同一言語環境で表示することができる。
【００１７】
本発明のプログラムは、上述したいずれかの処理実行方法の各ステップをコンピュータに実行させるためのものである。このプログラムは、コンピュータが読み取り可能な記録媒体（例えばハードディスク、ＲＯＭ、ＦＤ、ＣＤ、ＤＶＤなど）に記録されていてもよいし、伝送媒体（インターネットやＬＡＮなどの通信網）を介してあるコンピュータから別のコンピュータへ配信されてもよいし、その他どのような形で授受されてもよい。このプログラムをコンピュータに実行させれば、上述した処理実行方法の各ステップが実行されるため、上述した処理実行方法と同様の効果を得ることができる。
【００１８】
本発明の第１の処理実行装置は、
アプリケーションからの要求に応じてドライバによる処理を実行する処理実行装置であって、
ディスプレイと、
前記ドライバが前記アプリケーションからディスプレイへの情報の表示を要求された際に、前記アプリケーションの言語情報を取得し、該取得した言語情報に基づいて前記ドライバが前記ディスプレイに表示する表示言語の設定を行い、前記ドライバが要求された情報を該設定した表示言語で前記ディスプレイに表示する制御手段と、
を備えたものである。
【００１９】
この処理実行装置では、ドライバがアプリケーションからディスプレイへの情報の表示を要求された際に、制御手段が該表示を要求したアプリケーションから言語情報を取得し、該取得した言語情報に基づいて前記ディスプレイに表示する表示言語の設定を行い、該設定された表示言語で前記アプリケーションに要求された情報を前記ディスプレイに表示する。こうすることにより、ドライバはアプリケーションで使用されている言語と同じ言語を表示言語に設定することができる。したがって、アプリケーションからの情報とドライバからの情報とを同一言語環境でディスプレイに表示することができる。なお、この処理実行装置において、上述したいずれかの処理実行方法のステップを実現する手段を追加してもよい。
【００２０】
本発明の第２の処理実行装置は、
アプリケーションからの要求に応じてドライバによる処理を実行する処理実行装置であって、
前記ドライバが前記アプリケーションから情報の提供を要求された際に、前記アプリケーションの言語情報を取得し、該取得した言語情報に基づいて前記ドライバが前記アプリケーションに情報を提供する表示文字コード及び表示言語の設定を行い、前記ドライバが要求された情報を該設定した表示文字コード及び表示言語で前記アプリケーションに提供する制御手段、
を備えたものである。
【００２１】
この処理実行装置では、ドライバがアプリケーションから情報の提供を要求された際に、制御手段が該情報の提供を要求したアプリケーションから言語情報を取得し、該取得した言語情報に基づいて前記アプリケーションに情報を提供する表示文字コード及び表示言語の設定を行い、該設定された表示文字コード及び表示言語で前記アプリケーションに要求された情報を提供する。こうすることにより、ドライバがアプリケーションから情報の提供を要求された場合にドライバはアプリケーションで使用されている文字コード及び言語と同じものを表示文字コード及び表示言語に設定することができる。したがって、ドライバから提供された情報とアプリケーションの情報とを併せてアプリケーションがディスプレイに表示する場合に文字化けすることなくかつ同一言語環境で表示することができる。なお、この処理実行装置において、上述したいずれかの処理実行方法のステップを実現する手段を追加してもよい。
【発明を実施するための最良の形態】
【００２２】
次に、本発明の実施の形態を図面に基づいて説明する。図１は、本実施形態であるコンピュータ１０の構成の概略を示す構成図である。本実施形態のコンピュータ１０は、図１に示すように、コンピュータ１０で処理する情報等をユーザに表示するためのディスプレイ５０と、コンピュータ１０内のデータを印刷するプリンタ６０とに接続されており、コンピュータの動作全体を管理するオペレーティングシステム（ＯＳ）２０と、文書の作成，編集，印刷指示等のワードプロセッサ機能を備えたアプリケーション３０と、コンピュータ１０とプリンタ６０との間で印刷指示や印刷状態等のデータ送受信の仲介を行うプリンタドライバ４０とを備えている。なお、コンピュータ１０には、アプリケーション３０の他に図示しないいくつかのアプリケーションがインストールされている。
【００２３】
アプリケーション３０は、プリンタ６０へ文書の印刷を指示する際に印刷設定画面をディスプレイ５０に表示する。アプリケーション３０が表示する印刷設定画面の構成を図２に示す。印刷設定構成画面７０は、印刷設定画面（例えば図３参照）を作成する際に用いられる画面であり、アプリケーション３０の表示画面記憶部３１に記憶されている。この印刷設定構成画面７０は、画面上辺に沿って表示される帯状のタイトルバー７１と、タイトルバー７１の下方に表示されるメイン画面７３とを備えている。このうち、タイトルバー７１には、印刷設定画面のウィンドウタイトル７２が表示される。また、メイン画面７３は、プリンタに関する情報を表示する第１小画面７４と、印刷範囲を設定する第２小画面７５と、印刷部数を設定する第３小画面７６とを備えている。第１小画面７４は、プリンタの名称を表示するプリンタ名称表示部７７と、プリンタドライバ４０から提供されたプリンタ６０に関する情報を表示するための第１表示部７８及び第２表示部７９と、プリンタドライバ４０にプリンタ６０のプロパティ画面を表示させるためのプロパティボタン８０とを備えている。なお、本実施形態において、アプリケーション３０の表示文字コードはＵｎｉｃｏｄｅであり、表示言語は日本語であるものとする。したがって、アプリケーション３０の印刷設定構成画面７０における文字は全てＵｎｉｃｏｄｅで記述された日本語である。例えば、印刷設定構成画面７０のウィンドウタイトル７２は、Ｕｎｉｃｏｄｅで記述された日本語の「印刷」という文字である。
【００２４】
プリンタドライバ４０は、プリンタドライバ４０の動作を制御するドライバ制御部４１と、後述するプロパティ構成画面９０（図４参照）などの表示画面を記憶する表示画面記憶部４２と、ユーザに表示する情報を複数の文字コード及び言語で記憶する表示文字列記憶部４３とを備えている。
【００２５】
ドライバ制御部４１は、後述する要求処理ルーチン及び表示設定ルーチンに基づいて表示文字コード及び表示言語を設定し、アプリケーションへの情報の提供及びプリンタ６０のプロパティ画面の表示を行う機能を備えている。
【００２６】
表示画面記憶部４２には、図４に示すプロパティ構成画面９０が記憶されている。プロパティ構成画面９０は、印刷する際の用紙サイズや印刷方向の設定などプリンタ６０に関する設定を行うためのプロパティ画面（例えば図５参照）を作成する際に用いられる画面である。このプロパティ構成画面９０は、画面上辺に沿って表示される帯状のタイトルバー９１と、タイトルバー９１の下方に表示されるメイン画面９２とを備えている。タイトルバー９１は、ウィンドウタイトルを表示する第１２表示部１１２を備えている。また、メイン画面９２は、印刷する際の設定項目名及び設定項目内容などを表示するための第１表示部１０１〜第１１表示部１１１を備えている。
【００２７】
表示文字列記憶部４３には、図６に示す表示文字列テーブルが記憶されている。表示文字列テーブルには、ドライバ４０がアプリケーションに情報を提供したりプロパティ画面をディスプレイ５０に表示したりするときに利用することができる複数の文字コード及び言語で記述された文字列が記憶されている。具体的には、文字コードと言語との組み合わせに対して、後述する表示文字コード及び表示言語を設定する際に用いる判定文字列やアプリケーションに提供する表示文字列Ａ１，Ａ２、プロパティ画面に表示する表示文字列Ｂ１〜Ｂ１２が対応付けられて記憶されている。例えば、文字コードがＵｎｉｃｏｄｅで言語が日本語の場合には、判定文字列として「印刷」、表示文字列Ａ１として「準備完了」や「印刷中」などの文字列群、表示文字列Ａ２として「IP_△△△」などのＵｎｉｃｏｄｅで記述された日本語の文字列が対応付けられている。また、文字コードがＳｈｉｆｔ＿ＪＩＳで言語が日本語の場合には、判定文字列として「印刷」、表示文字列Ａ１として「準備完了」や「印刷中」などの文字列群、表示文字列Ａ２として「IP_△△△」などのＳｈｉｆｔ＿ＪＩＳで記述された日本語の文字列が対応付けられている。ここで、例えば文字列「印刷」は「印」という文字と「刷」という文字から構成されているが、これら二つの文字を１６進数でコード表記すると、Ｕｎｉｃｏｄｅでは「５３７０」「５２３７」となり、Ｓｈｉｆｔ＿ＪＩＳでは「８８Ｆ３」「８ＤＦＣ」となる。このように、同じ日本語の「印刷」という文字列であっても、異なる文字コードに対応付けられている文字列は異なるコード表記で記憶されている。また、文字コードがＵｎｉｃｏｄｅで言語が英語の場合には、判定文字列として「Print」、表示文字列Ａ１として「Ready」や「Now Printing」などの文字列群、表示文字列Ａ２として「IP_△△△」などのＵｎｉｃｏｄｅで記述された英語の文字列が対応付けられている。なお、表示文字列テーブルには、図示しない他の文字コード及び言語に対応付けられている判定文字列及び表示文字列が含まれている。例えば、文字コードとしてはＡＳＣＩＩや国際標準化機構（ＩＳＯ）で規格化された文字コードなどであり、言語としてはドイツ語，中国語などである。
【００２８】
次に、こうして構成された本実施形態におけるプリンタドライバ４０の動作について説明する。図７はプリンタドライバ４０のドライバ制御部４１によって実行される要求処理ルーチンのフローチャートである。ドライバ制御部４１は、所定のタイミングごとにこのルーチンを繰り返し実行する。このルーチンにおいて、ドライバ制御部４１は、まず、コンピュータ１０にインストールされているいずれかのアプリケーションから情報の提供を要求されたか否かを判定する（ステップＳ１００）。例えば、アプリケーション３０は、印刷設定構成画面７０の第１表示部７８〜第２表示部７９に文字列を配置することにより印刷設定画面を作成する際に、プリンタ６０に関する情報として表示文字列Ａ１，Ａ２の提供を要求する。そして、ステップＳ１００でいずれかのアプリケーションから情報の提供を要求された場合には、そのアプリケーションがこれから表示しようとしているウィンドウのウィンドウタイトルを取得する（ステップＳ１１０）。例えば、要求元がアプリケーション３０であり、これから表示しようとしているウィンドウが印刷設定画面の場合、取得するウィンドウタイトルは印刷設定構成画面７０のウィンドウタイトル７２、つまりＵｎｉｃｏｄｅの日本語で表示される「印刷」となる。なお、ウィンドウタイトル７２はＡＰＩ（Ａｐｐｒｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を用いて取得することができる。
【００２９】
続いて、ドライバ制御部４１は、表示設定ルーチンを実行する（ステップＳ１２０）。図８は表示設定ルーチンのフローチャートである。このルーチンが開始されると、ドライバ制御部４１は、ウィンドウタイトルが取得できたか否かを判定し（ステップＳ３００）、取得できた場合には取得したウィンドウタイトルと図６の表示文字列テーブルにおける判定文字列のいずれかとが一致するか否かを判定する（ステップＳ３１０）。例えば、要求元がアプリケーション３０の場合には、取得したウィンドウタイトル７２は「印刷」、すなわちコード表記で「５３７０」「５２３７」であるため、Ｕｎｉｃｏｄｅの日本語に対応する判定文字列である「印刷」と一致する。なお、ウィンドウタイトルが「８８Ｆ３」「８ＤＦＣ」だった場合には、Ｓｈｉｆｔ＿ＪＩＳの日本語に対応する判定文字列である「印刷」と一致することになり、ウィンドウタイトルが「００５０」「００７２」「００６９」「００６Ｅ」「００７４」だった場合には、Ｕｎｉｃｏｄｅの英語に対応する判定文字列である「Print」と一致することになる。そして、ステップＳ３１０でウィンドウタイトルと判定文字列のいずれかとが一致した場合は、その一致した判定文字列に対応付けられている文字コード及び言語をプリンタドライバ４０の表示文字コード及び表示言語に設定し（ステップＳ３２０）、表示設定ルーチンを終了する。例えば、要求元がアプリケーション３０の場合には、Ｕｎｉｃｏｄｅをプリンタドライバ４０の表示文字コードに設定し、日本語をプリンタドライバ４０の表示言語に設定する。一方、ステップＳ３００でウィンドウタイトルを取得できなかった場合やステップＳ３１０でウィンドウタイトルが判定文字列のいずれとも一致しなかった場合には、Ｕｎｉｃｏｄｅをプリンタドライバ４０の表示文字コードに設定し、英語をプリンタドライバ４０の表示言語に設定して、表示設定ルーチンを終了する。このような場合としては、例えば、アプリケーションがウィンドウタイトルを文字ではなく画像として扱っている場合などが挙げられる。Ｕｎｉｃｏｄｅを表示文字コードに設定するのは国際標準化機構（ＩＳＯ）で標準化された文字コードの一つだからである。また、英語を表示言語に設定するのは、世界で使用される割合が高いためである。
【００３０】
さて、ステップＳ１２０で表示設定ルーチンを実行したあと、設定された表示文字コード及び表示言語でアプリケーションから要求された情報をアプリケーションに提供し（ステップＳ１３０）、この要求処理ルーチンを終了する。例えば、要求元がアプリケーション３０である場合には、Ｕｎｉｃｏｄｅを表示文字コード、日本語を表示言語に設定しているので、アプリケーション３０から要求されたプリンタ６０に関する情報である表示文字列Ａ１，Ａ２のそれぞれに対応するＵｎｉｃｏｄｅで記述された日本語の文字列を提供する。具体的には、プリンタドライバ４０は、表示文字列Ａ１については、Ｕｎｉｃｏｄｅの日本語で「準備完了」や「印刷中」などの文字列候補の中から現在のプリンタ６０の稼動状態に合った文字列（例えば「準備完了」）を提供し、表示文字列Ａ２については、プリンタ６０の接続先を確認した上でＵｎｉｃｏｄｅの日本語で「IP_△△△」を提供する。そして、これらの文字列の提供を受けたアプリケーション３０は、印刷設定構成画面７０の第１表示部７７に表示文字列Ａ１として「準備完了」、第２表示部７８に表示文字列Ａ２として「IP_△△△」を配置することにより、図３に示す印刷設定画面１７０をディスプレイ５０に表示する。
【００３１】
一方、ステップＳ１００において、いずれのアプリケーションからも情報の提供を要求されていなかった場合には、いずれかのアプリケーションからディスプレイ５０への画面の表示を要求されたか否かを判定する（ステップＳ２００）。例えば、アプリケーション３０は、起動している最中にユーザが印刷設定画面１７０のプロパティボタン８０をマウスなどを使ってクリックすると、ディスプレイ５０へのプロパティ画面の表示をプリンタドライバ４０に要求する。そして、ステップＳ２００でいずれのアプリケーションからも画面の表示を要求されていなかった場合には、そのまま本ルーチンを終了する。一方、ステップＳ２００でいずれかのアプリケーションから画面の表示を要求された場合には、その時点でアクティブになっているウィンドウのウィンドウタイトルを取得する（ステップＳ２１０）。例えば、要求元がアプリケーション３０であり、アクティブになっているウィンドウが印刷設定画面１７０の場合、取得するウィンドウタイトルは印刷設定画面１７０のウィンドウタイトル７２、つまりＵｎｉｃｏｄｅの日本語で表示される「印刷」となる。続いて、表示設定ルーチンを実行する（ステップＳ２２０）。この表示設定ルーチンは、ステップＳ１２０と同様であるため、その説明を省略する。ステップＳ２２０で表示設定ルーチンを実行したあと、設定された表示文字コード及び表示言語でアプリケーションから要求された画面をディスプレイ５０に表示し（ステップＳ２３０）、この要求処理ルーチンを終了する。例えば、要求元がアプリケーション３０である場合には、Ｕｎｉｃｏｄｅを表示文字コード、日本語を表示言語に設定しているので、プロパティ構成画面９０の各表示部１０１〜１１２のそれぞれに各表示文字列Ｂ１〜Ｂ１２に対応するＵｎｉｃｏｄｅで記述された日本語の文字列を配置してディスプレイに表示する。具体的には、プリンタドライバ４０は、表示文字列Ｂ１として「用紙サイズ」、表示文字列Ｂ２として「印刷方向」、表示文字列Ｂ３として「給紙種類」、表示文字列Ｂ４として「用紙種類」、表示文字列Ｂ５として「Ａ４」、表示文字列Ｂ６として「縦」、表示文字列Ｂ７として「横」、表示文字列Ｂ８として「自動選択」、表示文字列Ｂ９として「普通紙」、表示文字列Ｂ１０として「キャンセル」、表示文字列Ｂ１１として「OK」、表示文字列Ｂ１２として「プリンタ６０のプロパティ」を設定し、これらＵｎｉｃｏｄｅの日本語で記述された文字列を各表示部１０１〜１１２に表示することにより、図５に示すプロパティ画面１９０をディスプレイ５０に表示する。なお、表示文字列Ｂ５，Ｂ８，Ｂ９については、プルダウンメニューでの選択によっては図示しない文字列がＵｎｉｃｏｄｅの日本語で表示される。
【００３２】
ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態のステップＳ２００及びステップＳ２１０が本発明のステップ（ａ）に相当し、本実施形態のステップＳ１００及びステップＳ１１０が本発明のステップ（ｄ）に相当し、本実施形態のステップＳ３１０及びステップＳ３２０が本発明のステップ（ｂ）及びステップ（ｅ）に相当し、本実施形態のステップＳ２３０が本発明のステップ（ｃ）に相当し、本実施形態のステップＳ１３０が本発明のステップ（ｆ）に相当する。
【００３３】
以上詳述した本実施形態によれば、アプリケーション３０がプリンタドライバ４０にプリンタ６０に関する情報の提供を要求した際に、プリンタドライバ４０はアプリケーション３０から言語情報を取得し、取得した言語情報に基づいてプリンタドライバ４０の表示文字コード及び表示言語を設定し、その表示文字コード及び表示言語でプリンタ６０に関する情報をアプリケーション３０に提供するため、アプリケーション３０がプリンタドライバ４０から提供された情報とアプリケーション３０の情報とを併せた印刷設定画面１７０をディスプレイ５０に表示する場合に文字化けすることなくかつ同一言語環境で表示することができる。
【００３４】
また、アプリケーション３０がプリンタドライバ４０にプロパティ画面をディスプレイ５０に表示する要求をした際に、プリンタドライバ４０はアプリケーション３０から言語情報を取得し、取得した言語情報に基づいてプリンタドライバ４０の表示文字コード及び表示言語を設定し、その表示文字コード及び表示言語でプリンタ６０のプロパティ画面をディスプレイ５０に表示するため、アプリケーション３０と同じ表示文字コード及び表示言語でプロパティ画面１９０を表示することができる。したがって、ユーザは同一言語環境でアプリケーション３０の操作・印刷操作・プリンタ６０の設定などを行うことができる。
【００３５】
更に、表示文字コード及び表示言語の設定はあらかじめ表示文字列記憶部４３に記憶された表示文字列テーブルの判定文字列のいずれかと取得した言語情報とが一致するか否かを判定することで行っているため、判定文字列と言語情報とを比較するだけで容易に表示文字コード及び表示言語を設定することができる。
【００３６】
更にまた、プリンタドライバ４０に情報の提供又はプロパティ画面の表示を要求する際のアプリケーション３０のウィンドウタイトルは「印刷」「Print」など特定の単語に限定されているため、言語情報としてウィンドウタイトル７２を取得することにより、判定文字列を用いて容易に表示文字コード及び表示言語を設定することができる。
【００３７】
なお、本発明は上述した各実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
【００３８】
例えば、上述した実施形態では、プリンタドライバはアプリケーションから情報を提供するよう要求された場合であっても画面を表示するよう要求された場合であっても上述した処理を実行するが、どちらかの要求についてのみ処理を実行するプリンタドライバであってもよい。
【００３９】
上述した実施形態では、プリンタドライバはアプリケーションから画面を表示するよう要求された場合にアプリケーションと同じ表示文字コード及び表示言語を設定するが、画面の表示についてはアプリケーションと同じ表示言語であれば異なる表示文字コードを設定してもよい。
【００４０】
上述した実施形態では、アプリケーションからの要求がある度に言語情報を取得し表示設定ルーチンを実行するが、同じアプリケーションから２回目以降の要求が来た時には既にそのアプリケーションに対応した表示文字コード及び表示言語を設定済みであるため、言語情報の取得及び表示設定ルーチンの実行を省略してもよい。こうすれば、同じアプリケーションからの要求により早く応えることができる。
【００４１】
上述した実施形態では、表示設定ルーチンにおいてウィンドウタイトルを取得できない場合やウィンドウタイトルと判定文字列のいずれかとが一致しなかった場合にはＵｎｉｃｏｄｅを表示文字コード、英語を表示言語に設定することとしたが、ＵｎｉｃｏｄｅでなくてもＡＳＣＩＩなど他の文字コードに設定してもよいし、英語でなくても日本語、ドイツ語など他の言語に設定してもよい。また、ＯＳの言語情報を取得し、ＯＳと同じ表示文字コード及び表示言語に設定してもよい。
【００４２】
上述した実施形態では、プリンタドライバはアプリケーションから情報を提供するよう要求された場合であっても画面を表示するよう要求された場合であっても同じ表示設定ルーチンを実行するが、異なる表示設定ルーチンを実行してもよい。例えば、ウィンドウタイトルの取得又は判定文字列の一致に失敗した場合に、情報の提供を要求されている場合には文字化けを防ぐためにＵｎｉｃｏｄｅを表示文字コード、英語を表示言語に設定し、画面の表示を要求されている場合にはユーザに理解される可能性の高いＯＳと同じ表示文字コード及び表示言語に設定してもよい。
【００４３】
上述した実施形態では、取得した言語情報と判定文字列とがすべて一致した場合に、その判定文字列の文字コード及び言語を表示文字コード及び表示言語に設定しているが、取得した言語情報と判定文字列との一部が一致した場合にも一致したとみなして表示文字コード及び表示言語を設定してもよい。例えば、取得した言語情報が「印刷設定」であって判定文字列が「印刷」であっても一致したとみなしてもよい。こうすれば、取得した言語情報が判定文字列と完全に一致しなくても表示文字コード及び表示言語を設定することができる。
【００４４】
上述した実施形態では、判定文字列は一つの文字コード及び言語の組み合わせにつき一つであったが、複数の判定文字列があってもよい。例えば「印刷」だけでなく「プリント」も判定文字列としてもよい。こうすれば、取得した言語情報と判定文字列のいずれかとが一致する可能性が高くなる。
【００４５】
上述した実施形態では、ドライバが能動的にアプリケーションの言語情報を取得しているが、アプリケーションが要求と同時に言語情報をドライバに渡す処理を実行してもよい。こうすれば、ドライバは要求されると同時に言語情報を確実に取得できる。
【００４６】
上述した実施形態では、ＡＰＩを用いてウィンドウタイトルを取得しているが、他の方法でウィンドウタイトルを取得してもよい。例えば、ウィンドウのタイトル部を画像として取得し、画像からタイトルの文字列を判定して言語情報として取得してもよい。
【００４７】
上述した実施形態では、言語情報としてウィンドウタイトルを取得しているが、他の情報を取得してもよい。例えばウィンドウの他の部分（「印刷範囲」などの設定項目名や「プロパティ」などボタンの名称など）から取得してもよいし、アプリケーションのファイル情報やバージョン情報から取得してもよい。
【００４８】
上述した実施形態では、一つの言語（例えば、日本語）について複数の文字コード（例えば、Ｕｎｉｃｏｄｅ及びＳｈｉｆｔ＿ＪＩＳ）で記述された判定文字列と表示文字列とが表示文字列テーブルとして表示文字列記憶部に記憶されているが、表示文字列については一つの言語につき一つの文字コードでのみ記憶しておき、必要に応じて他の文字コードにコード変換することとしてもよい。例えば、上述した実施形態では、日本語の表示文字列Ａ１としてＵｎｉｃｏｄｅの「準備完了」（コード表記で「６Ｅ９６」「５０９９」「５Ｂ８Ｃ」「４Ｅ８６」）とＳｈｉｆｔ＿ＪＩＳの「準備完了」（コード表記で「８Ｆ８０」「９４Ｆ５」「３４３０」「９７Ｂ９」）がともに記憶されているが、Ｕｎｉｃｏｄｅの「準備完了」のみを記憶しておき、Ｓｈｉｆｔ＿ＪＩＳが表示文字コードに設定された場合にはＵｎｉｃｏｄｅの「準備完了」をＳｈｉｆｔ＿ＪＩＳの「準備完了」にコード変換して提供することとしてもよい。こうすれば、あらかじめ記憶しておくのは一つの言語について一つの文字コードで記述された表示文字列のみでよいため、表示文字列記憶部に記憶しておくデータ量が少なくてすむ。
【００４９】
上述した実施形態では、表示文字列テーブルにはアプリケーションに提供する表示文字列とプロパティ画面に表示する表示文字列とを一つの表示文字列テーブルとして記憶しているが、別々の表示文字列テーブルとして記憶してもよい。
【００５０】
上述した実施形態では、ドライバが１つコンピュータにインストールされている構成であるが、ドライバは１又は複数インストールされていてもよい。
【００５１】
上述した実施形態では、コンピュータとプリンタとが１台ずつ接続されている構成であるが、１又は複数のコンピュータと１又は複数のプリンタとが接続された構成であってもよい。
【００５２】
上述した実施形態では、アプリケーション３０はワードプロセッサ機能を備えているが、表計算や画像処理など他の機能を備えたアプリケーションであってもよい。
【００５３】
上述した実施形態では、処理を実行しているのはプリンタドライバであるが、スキャナ装置，ＣＤ−ＲＯＭドライブ，マウス及びモデムなどコンピュータの周辺機器のドライバであればどのようなドライバであってもよい。
【図面の簡単な説明】
【００５４】
【図１】本実施形態であるコンピュータ１０の構成の概略を示す構成図。
【図２】アプリケーション３０の印刷設定構成画面７０の概略図。
【図３】アプリケーション３０が表示する印刷設定画面１７０の概略図。
【図４】プリンタ６０のプロパティ構成画面９０の概略図。
【図５】ドライバ制御部４１が表示するプロパティ画面１９０の概略図。
【図６】表示文字列記憶部４３に記憶されている表示文字列テーブルの説明図。
【図７】要求処理ルーチンのフローチャート。
【図８】表示設定ルーチンのフローチャート。
【符号の説明】
【００５５】
１０  コンピュータ、２０  オペレーティングシステム、３０  アプリケーション、３１  表示画面記憶部、４０  プリンタドライバ、４１  ドライバ制御部、４２  表示画面記憶部、４３  表示文字列記憶部、５０  ディスプレイ、６０  プリンタ、７０  印刷設定構成画面、７１  タイトルバー、７２  ウィンドウタイトル、７３  メイン画面、７４  第１小画面、７５  第２小画面、７６  第３小画面、７７  プリンタ名称表示部、７８  第１表示部、７９  第２表示部、８０  プロパティボタン、９０  プロパティ構成画面、９１  タイトルバー、９２  メイン画面、１０１  第１表示部、１０２  第２表示部、１０３  第３表示部、１０４  第４表示部、１０５  第５表示部、１０６  第６表示部、１０７  第７表示部、１０８  第８表示部、１０９  第９表示部、１１０  第１０表示部、１１１  第１１表示部、１１２  第１２表示部、１７０  印刷設定画面、１９０  プロパティ画面。
【図１】
0004973449.tif 000002
【図２】
0004973449.tif 000003
【図３】
0004973449.tif 000004
【図４】
0004973449.tif 000005
【図５】
0004973449.tif 000006
【図６】
0004973449.tif 000007
【図７】
0004973449.tif 000008
【図８】
0004973449.tif 000009