(57)【要約】    【課題】  本発明は、印刷設定を行う際に生じた不具合の原因を短期間で特定すると共に、不具合が生じない印刷設定手順を容易に調査することができる情報処理装置を提供する。    【解決手段】  ユーザＰＣ１０１により記録された印刷設定手順記録ファイルを受信したサポートセンターＰＣ１０２では、オープンした印刷設定手順記録ファイルに基づいて、ユーザＰＣ１０１にて発生した不具合操作手順を特定し、更に、印刷設定手順記録ファイルからユーザＰＣ１０１と同一のソフトウェア環境を構築すると共に、デフォルトからのコントロール変更差分を取得して、該コントロール変更差分から少なくとも１つの印刷設定パターンを生成し、不具合の発生しない印刷設定を特定し、不具合回避方法としてユーザに送信する。【選択図】      図３
2006011876.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ端末から送信された印刷設定手順の情報を解析する情報処理装置において、
前記印刷設定手順情報に基づいて前記ユーザ端末と同一のソフトウェア環境を構築する構築手段と、
初期の印刷設定からの変更差分を前記印刷設定手順情報から取得する取得手段と、
前記取得手段により取得された変更差分に基づいて取り得る印刷設定パターンを生成する生成手段と、
前記生成手段により生成された少なくとも１つの印刷設定パターンから前記ソフトウェアの不具合が生じない印刷設定手順を特定する特定手段とを有することを特徴とする情報処理装置。
【請求項２】
前記構築手段は、前記印刷設定手順情報から得られたソフトウェアのバージョン情報に基づいて前記ソフトウェア環境を構築することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記特定手段は、前記生成手段により複数の印刷設定パターンが生成されたときは、所定の数に絞ることを特徴とする請求項１又は２記載の情報処理装置。
【請求項４】
前記ソフトウェアの過去の不具合設定情報を記録する記録手段と、前記記録手段により記録された不具合設定情報から前記印刷設定手順情報に基づいて検索された不具合操作手順を同一原因リストとして作成する作成手段とを更に有することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記作成手段は、前記印刷設定手順情報から取得した内部メモリ情報及び設定前後のアクション情報に基づいて作成することを特徴とする請求項４記載の情報処理装置。
【請求項６】
前記印刷設定手順情報には、前記ユーザ端末における設定前後のアクション情報、内部メモリ情報、及びＤＥＶＭＯＤＥ状況の少なくとも一つを含むことを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記ソフトウェアは、プリンタドライバであることを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
印刷装置に接続されたユーザ端末と、該ユーザ端末にネットワークを介して接続され、前記印刷装置による印刷を支援する情報処理装置とを備える印刷支援システムにおいて、
前記ユーザ端末は、前記印刷装置による印刷時に変更された印刷設定手順を印刷設定手順情報として記録する記録手段と、
前記記録された印刷設定手順を前記情報処理装置に送信する送信手段とを備え、
前記情報処理装置は、前記ユーザ端末から受信した印刷設定手順情報に基づいて前記ユーザ端末と同一のソフトウェア環境を構築する構築手段と、
前記ソフトウェア環境の初期の印刷設定からの変更差分を前記印刷設定手順情報から取得する取得手段と、
前記取得された変更差分に基づいて取り得る印刷設定パターンを生成する生成手段と、
前記生成された少なくとも１つの印刷設定パターンから前記ソフトウェアの不具合が生じない印刷設定手順を特定する特定手段とを備えることを特徴とする印刷支援システム。
【請求項９】
印刷時に変更された印刷設定手順を記録するユーザ端末に接続され、前記ユーザ端末から送信された印刷設定手順の情報を解析する情報処理装置の制御方法において、
前記印刷設定手順情報に基づいて前記ユーザ端末と同一のソフトウェア環境を構築する構築工程と、
初期の印刷設定からの変更差分を前記印刷設定手順情報から取得する取得工程と、
前記取得工程にて取得された変更差分に基づいて取り得る印刷設定パターンを生成する生成工程と、  前記生成工程にて生成された少なくとも１つの印刷設定パターンから前記ソフトウェアの不具合が生じない印刷設定手順を特定する特定工程とを有することを特徴とする制御方法。
【請求項１０】
請求項９記載の制御方法をコンピュータに実行させるためのプログラム。
【請求項１１】
請求項９記載の制御方法をコンピュータに実行させるためのプログラムを記憶した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びその制御方法、記憶媒体、プログラム、ならびに印刷支援システムに関し、特に、印刷時に発生した不具合に対してサポートすることができる情報処理装置及びその制御方法、記憶媒体、プログラム、ならびに印刷支援システムに関するものである。
【背景技術】
【０００２】
従来、ユーザが書類（ドキュメント）の印刷をするためにＰＣ（Personal Computer）を操作し、プリンタ等の印刷装置に対して印刷指示を行うが、印字不正あるいはアプリケーションエラー等の不具合が発生してしまい、最終的に印刷することができない場合がある。このような不具合が発生した場合、ユーザは、プリンタメーカーのサポートセンターの担当者あるいはサービスエンジニア（ＳＥ）に対して、電話又は電子メールという手段を用いて不具合発生状況に関する連絡を行っている。
【０００３】
印刷する際に発生する不具合の中には、プリンタドライバの印刷設定の手順に依存しない不具合と依存する不具合とがあり、印刷設定手順に依存しない不具合に関しては、ユーザからの状況報告で再現確認できる場合が多いが、印刷設定手順に依存した不具合に関しては、ユーザ自身が不具合の発生手順を覚えていないケースが多い。
【０００４】
ユーザ自身が不具合の発生手順を覚えていない場合は、ユーザ自身が再度詳細な不具合の発生手順を再現させるか、又はユーザから連絡を受けたサポートセンターの担当者或いはＳＥが詳細な不具合の発生手順を再現させて、プリンタメーカー内の開発者側に連絡する必要がある。そのため、サポートセンター側では、不具合の再現手順を確認した後、開発者側に不具合の調査依頼及び回避策の有無を問い合わせなければならず、開発者側では、サポートセンターから受けた情報に基づいて不具合の検証を行わなければならないので、多大な時間を費やすことになる。
【０００５】
特に深刻な不具合の場合は、バグフィックスしなければ不具合を解消することができないが、不具合が発生したときと異なる手順でプリンタドライバの印刷設定を行うと、不具合を回避することができることもあり、その場合は回避策としてユーザに通知することができる。しかし、その回避策がユーザに通知されるまでには、ユーザがサポートセンターに不具合を通知してから数週間単位の時間が必要となる。
【０００６】
一方、ユーザが操作する情報処理装置で発生した障害の分析を、サポートセンターの支援者がより容易に行うことができるようにする技術の開示がされている（例えば、特許文献１参照）。
【０００７】
また、障害が発生した場合において、その障害対策用の情報を、ユーザが自身で検索を行い、取得することを可能とする技術の開示がされている（例えば、特許文献２参照）。
【特許文献１】特開２００２−３６６３８８号公報
【特許文献２】特開２００４−０２１４３８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記従来の技術では、ユーザ操作があったことを認識した場合に、情報処理装置の表示部に表示されている画面を形成する画面データが記録手段に操作履歴データとして記録されるので、ユーザが操作する情報処理装置で発生した障害の分析をサポートセンターの支援者がより容易に行うことはできるが、その操作履歴データに基づいて不具合の調査及び回避策の有無を検討しなければならないことには変わりがない。
【０００９】
また、障害対策用の情報が、カスタマサポート支援サーバに保存されていれば、ユーザはプリンタメーカーの助けを借りることなく自身で問題解決を図ることができるが、保存されていなければメーカーの助けを借りなければならない。
【００１０】
特に、プリンタドライバの印刷設定の手順に依存する不具合は様々なパターンがあり得るので、事前に障害対策用の情報を保存しておくことが困難であり、結局多くの場合、ユーザがプリンタメーカーの助けを借りなければならなくなるという問題がある。
【００１１】
本発明は、上記問題を解決するために成されたものであり、印刷設定を行う際に生じた不具合の原因を短期間で特定すると共に、不具合が生じない印刷設定手順を容易に調査することができる情報処理装置及びその制御方法、記憶媒体、プログラム、ならびに印刷支援システムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記目的を達成するために、請求項１記載の情報処理装置は、ユーザ端末から送信された印刷設定手順の情報を解析する情報処理装置において、前記印刷設定手順情報に基づいて前記ユーザ端末と同一のソフトウェア環境を構築する構築手段と、初期の印刷設定からの変更差分を前記印刷設定手順情報から取得する取得手段と、前記取得手段により取得された変更差分に基づいて取り得る印刷設定パターンを生成する生成手段と、前記生成手段により生成された少なくとも１つの印刷設定パターンから前記ソフトウェアの不具合が生じない印刷設定手順を特定する特定手段とを有することを特徴とする。
【００１３】
上記目的を達成するために、請求項８記載の印刷支援システムは、印刷装置に接続されたユーザ端末と、該ユーザ端末にネットワークを介して接続され、前記印刷装置による印刷を支援する情報処理装置とを備える印刷支援システムにおいて、前記ユーザ端末は、前記印刷装置による印刷時に変更された印刷設定手順を印刷設定手順情報として記録する記録手段と、前記記録された印刷設定手順を前記情報処理装置に送信する送信手段とを備え、前記情報処理装置は、前記ユーザ端末から受信した印刷設定手順情報に基づいて前記ユーザ端末と同一のソフトウェア環境を構築する構築手段と、前記ソフトウェア環境の初期の印刷設定からの変更差分を前記印刷設定手順情報から取得する取得手段と、前記取得された変更差分に基づいて取り得る印刷設定パターンを生成する生成手段と、前記生成された少なくとも１つの印刷設定パターンから前記ソフトウェアの不具合が生じない印刷設定手順を特定する特定手段とを備えることを特徴とする。
【００１４】
上記目的を達成するために、請求項９記載の情報処理装置の制御方法は、印刷時に変更された印刷設定手順を記録するユーザ端末に接続され、前記ユーザ端末から送信された印刷設定手順の情報を解析する情報処理装置の制御方法において、前記印刷設定手順情報に基づいて前記ユーザ端末と同一のソフトウェア環境を構築する構築工程と、初期の印刷設定からの変更差分を前記印刷設定手順情報から取得する取得工程と、前記取得工程にて取得された変更差分に基づいて取り得る印刷設定パターンを生成する生成工程と、前記生成工程にて生成された少なくとも１つの印刷設定パターンから前記ソフトウェアの不具合が生じない印刷設定手順を特定する特定工程とを有することを特徴とする。
【発明の効果】
【００１５】
本発明によれば、印刷設定手順情報に基づいてユーザ端末と同一のソフトウェア環境を構築し、初期の印刷設定からの変更差分を印刷設定手順情報から取得し、取得された変更差分に基づいて取り得る印刷設定パターンを生成し、生成された少なくとも１つの印刷設定パターンからソフトウェアの不具合が生じない印刷設定手順を特定するので、印刷設定を行う際に生じた不具合の原因を短期間で特定すると共に、不具合が生じない印刷設定手順を容易に調査することができる。
【００１６】
また、本発明によれば、印刷設定手順情報から得られたソフトウェアのバージョン情報に基づいてソフトウェア環境を構築するので、印刷設定を行う際に生じた不具合の原因を短期間で特定することができる。
【００１７】
また、本発明によれば、記録手段に記録されたソフトウェアの過去の不具合設定情報から印刷設定手順情報に基づいて検索された不具合操作手順を同一原因リストとして作成するので、再度同じ原因の不具合を発生させないようにすることができ、情報処理装置（サポートセンター）への問い合わせ回数を減少させることができる。また、より多くの同一の不具合設定情報が情報処理装置に蓄積されることにより、開発者側が不具合を解析する際の情報としても活用することができる。
【００１８】
また、本発明によれば、印刷設定手順情報には、前記ユーザ端末における設定前後のアクション情報、内部メモリ情報、及びＤＥＶＭＯＤＥ状況の少なくとも一つを含むので、不具合の生じた原因を的確に解析することができる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【００２０】
図１は、本発明の実施の形態に係る情報処理装置を含む印刷支援システムの全体構成を示すシステム構成図である。
【００２１】
図１において、本システムは、ユーザが使用するユーザＰＣ（Personal Computer）１０１（ユーザ端末）と、ユーザＰＣ１０１に接続された当該プリンタメーカー製のプリンタ１０４と、プリンタ１０４を利用してドキュメント印刷を行うユーザを支援するために、プリンタメーカー内のサポートセンターに設けられたサポートセンターＰＣ１０２と、ユーザＰＣ１０１とサポートセンターＰＣ１０２とを互いに接続するインターネット１０３とで構成される。
【００２２】
ユーザＰＣ１０１及びサポートセンターＰＣ１０２は、不図示のＣＰＵ、ＲＡＭ（メモリ）、ＲＯＭ、モニタ、キーボードやマウス、及びハードディスク等を有するパーソナルコンピュータ（情報処理装置）である。
【００２３】
図２は、図１のユーザＰＣ１０１及びサポートセンターＰＣ１０２のソフトウェア構成を示す図である。
【００２４】
図２において、ユーザＰＣ１０１は、ＯＳ（Operating System）内にドキュメント印刷を行うためのソフトウェアであるアプリケーション３０１と、アプリケーション３０１により作成されたドキュメントファイルをプリンタ１０４に印字させるための印刷制御モジュール（プリンタドライバ）３０２とを有する。プリンタドライバ３０２は、所定の印刷設定手順情報を印刷設定手順記録ファイルとして記録する印刷設定手順記録処理モジュール３０３を備える。
【００２５】
サポートセンターＰＣ１０２は、ＯＳ内に所定のアプリケーション３０４と、ユーザＰＣ１０１にて作成された印刷設定手順記録ファイルを受信して解析を行う情報解析モジュール３０５とを有する。情報解析モジュール３０５は、印刷設定手順情報解析モジュール３０６を備える。
【００２６】
図３は、図１の印刷支援システムにおける制御処理を示すチャートである。
【００２７】
図３において、まず、ユーザＰＣ１０１では、ユーザがプリンタドライバ３０２の印刷設定を行った際に発生した不具合の発生手順を、印刷設定手順記録処理モジュール３０３により印刷設定手順記録ファイルに記録する（ステップＳ２０１）。次に、ユーザは、記録した印刷設定手順記録ファイルをメールに添付してサポートセンター（サポートセンターＰＣ１０２）に送付する（ステップＳ２０２）。
【００２８】
サポートセンターＰＣ１０２では、印刷設定手順情報解析モジュール３０６が常時起動しており、ユーザから送付されてくるメールの添付ファイルをチェックし、受信した印刷設定手順記録ファイルを解析し、不具合が発生した原因と同一の原因及びその回避方法のリストを作成する（ステップＳ２０３）。なお、添付ファイルが印刷設定手順記録情報かどうかの判断は、メールに添付されたファイル名により判断する。送付されてきたファイルが印刷設定手順記録情報である場合には、当該ファイルを情報解析プログラムにインポートして解析処理を行う。
【００２９】
次に、サポートセンターＰＣ１０２は、ステップＳ２０３で作成された同一の原因及びその回避方法リストをユーザＰＣ１０１に対して電子メール等により送信する（ステップＳ２０４）。
【００３０】
ユーザＰＣ１０１では、受信した回避方法リストにより回避方法を実施する（ステップＳ２０５）。
【００３１】
次に、ユーザＰＣ１０１にインストールされたプリンタドライバ３０２の印刷設定手順記録処理モジュール３０３により実行される印刷設定手順記録処理を説明する。
【００３２】
図４は、図２の印刷設定手順記録処理モジュール３０３により実行される印刷設定手順記録処理を示すフローチャートである。
【００３３】
図４において、まず、ユーザによりプリンタドライバ３０２のプリンタプロパティが操作されると、図１０〜図１２に示す印刷設定用のＵＩ（User Interface）をオープンする（ステップＳ４０１）。
【００３４】
図１０に示すページ設定ＵＩ上では、出力用紙サイズ１００１、部数１００２、スタンプ１００３等を設定することができる。また、給紙タブ１００４をマウスポインタ等で選択すると、図１１に示す給紙ＵＩを表示する。給紙ＵＩ上では、給紙方法１１０１を設定することができる。
【００３５】
次に、印刷設定（ＵＩの設定）に変更があるか否かを判別し（ステップＳ４０２）、印刷設定に変更があるときは、更に印刷設定手順を記録するか否かを判別する（ステップＳ４０３）。印刷設定手順を記録するか否かの判別は、図１２に示すデバイスの設定ＵＩ上で、「印刷設定手順を記録する」１２０１のチェックボックスにチェックがあるか否かで行う。
【００３６】
ステップＳ４０３の判別の結果、「印刷設定手順を記録する」１２０１のチェックボックスにチェックがあり、印刷設定手順を記録するときは（ステップＳ４０３でＹＥＳ）、後述する印刷設定手順記録処理を行う（ステップＳ４０４）。つづいて、ＵＩの閉じるボタンが押下されたか否かを判別し（ステップＳ４０５）、ＵＩの閉じるボタンが押下されたときは、ＵＩをクローズして処理を終了する。
【００３７】
図５は、図４のステップＳ４０４の印刷設定手順記録処理の詳細を示すフローチャートである。本処理は、印刷設定手順記録処理モジュール３０３により実行されるものである。
【００３８】
図５において、印刷設定手順記録ファイルを作成する（ステップＳ５０１）。図１３に印刷設定手順記録ファイルの一例を示す。同図では、不具合の発生した印刷設定手順が既に印刷設定手順記録ファイルに書き込まれた状態を表すものであり、ステップＳ５０１で作成される印刷設定手順記録ファイルには印刷設定手順が記録されていないものとする。
【００３９】
次に、ユーザにより印刷設定の変更が行われたときは、その変更が行われた日時を印刷設定手順記録ファイル上の「日時」欄１３０１に書き込む（ステップＳ５０２）。次に、「出力用紙サイズ」１００１や「部数」１００２等の設定が変更されたときは、設定変更が行われたコントロール名称を取得し、印刷設定手順記録ファイル上の「コントロール名称」欄１３０２に書き込む（ステップＳ５０３）。コントロール名称として、例えば、「出力用紙サイズ」、「部数」、「スタンプ」等が書き込まれる。
【００４０】
次に、設定変更が行われたアクションを印刷設定手順記録ファイル上の「アクション」欄１３０３に書き込む（ステップＳ５０４）。つづいて、設定変更前後の設定値の名称を印刷設定手順記録ファイル上の「変更前」・「変更後」欄１３０４にそれぞれ書き込む（ステップＳ５０５）。例えば、「出力用紙サイズ」が「Ａ４」から「Ａ３」に変更された場合は、「変更前」に「Ａ４」、「変更後」に「Ａ３」と書き込まれる。
【００４１】
次に、設定変更後の印刷設定手順に関するユーザＰＣ１０１における内部メモリ情報を印刷設定手順記録ファイル上の「メモリ状況」欄１３０５に書き込む（ステップＳ５０６）。「メモリ状況」欄１３０５は、プリンタドライバ３０２が取り扱っている内部のメモリ情報の一例である。この内部メモリ情報は、最終的に同じ印刷設定状態（同じＤＥＶＭＯＤＥ）であっても、途中の設定プロセスが異なれば状況が異なるものである。例えば、コントロール名称がＡ→Ｂ→Ｃと設定された場合とＡ→Ｃ→Ｂと設定された場合とでは、内部メモリ情報の値は異なる。
【００４２】
ある内部メモリ情報の状態から設定を変更することにより不具合が発生する場合、それと全く別の不具合発生手順であっても、この内部メモリ情報の状態と次に操作した設定変更との組み合わせが不具合発生手順の中に存在していれば、同じ不具合であると云える。また、この内部メモリ情報が存在しているメモリ状況自体が不安定な状態であると云える。
【００４３】
次に、デフォルト（印刷設定の初期設定）からのコントロール変更差分を印刷設定手順記録ファイル上の「デフォルトからのコントロール変更差分」欄１３０６に書き込む（ステップＳ５０８）。「デフォルトからのコントロール変更差分」欄１３０６は、工場出荷値である初期設定からＵＩ上のどのコントロールが変更となっているのかの差分を表している。例えば、図示の符号１３０９では、デフォルトから「出力用紙サイズ」が「Ａ４」から「Ａ３」に、「部数」１００２が「１部」から「５部」に、「スタンプ」１００３が「ＯＦＦ」から「ＯＮ」に変更されたことを示す。
【００４４】
このように、デフォルトの印刷設定状態からの変更差分を記録することにより、最小限の印刷設定変更操作でユーザが所望する印刷設定（ＤＥＶＭＯＤＥ設定）にすることができる。
【００４５】
次に、ＤＥＶＭＯＤＥ状況を印刷設定手順記録ファイル上の「ＤＥＶＭＯＤＥ状況」欄１３０７に書き込み（ステップＳ５０８）、印刷設定手順記録ファイルを閉じて（クローズ）（ステップＳ５０９）、本処理を終了する。
【００４６】
「ＤＥＶＭＯＤＥ状況」欄１３０７は、印刷設定そのものであるため、最終的にこの「ＤＥＶＭＯＤＥ状況」欄１３０７の値が同一であれば、同一の印刷設定であると云える。
【００４７】
ＤＥＶＭＯＤＥは、ＵＩ上にない設定値も含まれているため、印刷設定手順が異なれば、ＤＥＶＭＯＤＥが異なってしまう可能性がある。つまり、デフォルトの印刷設定状態から「デフォルトからのコントロール変更差分」の手順を変えて印刷設定を行った結果、不具合が発生した印刷手順と異なる内部メモリ情報で、かつ同じＤＥＶＭＯＤＥが構築されたときは、当該印刷設定の手順がユーザが所望する印刷設定を実現するための回避策であると云える。逆に、上記手順を変えて設定を行った結果、不具合が発生した印刷手順と同じ内部メモリ情報が構築されている場合は、その内部メモリ情報が不安定な状態であるため、回避策とすることはできない。
【００４８】
次に、サポートセンターＰＣ１０２にインストールされた印刷設定手順情報解析モジュール３０６により実行される情報解析処理を説明する。
【００４９】
図６は、図２の印刷設定手順情報解析モジュール３０６により実行される情報解析処理を示すフローチャートである。
【００５０】
図６において、ステップＳ６０１では、後述する同一原因検索処理を行い、ステップＳ６０２では、後述する回避方法特定処理を行って、本処理を終了する。
【００５１】
図７は、図６のステップＳ６０１の同一原因検索処理の詳細を示すフローチャートである。
【００５２】
図７において、まず、ユーザＰＣ１０１から受信した印刷設定手順記録ファイルをオープンする（ステップＳ７０１）。
【００５３】
次に、オープンした印刷設定手順記録ファイルから最終設定変更の直前の内部メモリ情報を取得する（ステップＳ７０２）。図１３の印刷設定手順記録ファイルの例では、最終設定変更とは符号１３１１で示されたものであり、最終設定変更の直前の内部メモリ情報とは符号１３０８の値である。
【００５４】
次に、ハードディスク等に記憶された過去の不具合設定情報（不具合情報）を検索し、取得した内部メモリ情報と過去の不具合操作手順とを比較して、取得した内部メモリ情報と同一のものが存在するか否かを判別する（ステップＳ７０３）。符号１３０８の値と同一の内部メモリ情報が「メモリ状況」欄１４０１に存在しない不具合操作手順の例を図１４に示し、符号１３０８と同一の内部メモリ情報１５０１が存在する不具合操作手順の例を図１５に示す。
【００５５】
ステップＳ７０３の判別の結果、同一の内部メモリ情報が存在するときは、同一の内部メモリ情報が書き込まれた直後の操作（アクション）が同一か否かを判別する（ステップＳ７０４）。直後の操作とは、図１３の印刷設定手順記録ファイルの例では符号１３１１の内容であり、図１５の不具合操作手順の例では符号１５０２の内容である。そのため、符号１３１１の内容と符号１５０２の内容とが同一か否かを比較する。
【００５６】
ステップＳ７０４の判別の結果、直後の操作が同一であるときは、当該不具合操作手順から図１６に示す同一原因リストを作成する（ステップＳ７０５）。なお、既に同一原因リストが作成されていたときは、不具合操作手順を追加する。図１６では、同一原因が２つ存在していることを表す。
【００５７】
次に、過去の不具合操作手順との比較がすべて終了したか否かを判別し（ステップＳ７０６）、終了したときは印刷設定手順記録ファイルをクローズし（ステップＳ７０７）、本処理を終了する。
【００５８】
図８は、図６のステップＳ６０２の回避方法特定処理の詳細を示すフローチャートである。
【００５９】
図８において、ステップＳ８０１では、ユーザＰＣ１０１から受信した印刷設定手順記録ファイルをオープンする。
【００６０】
次に、ステップＳ８０２にて、サポートセンターＰＣ１０２にインストールされているプリンタドライバの環境整備を行う。この環境整備では、不具合が発生したユーザＰＣ１０１にインストールされているプリンタドライバ３０２と同一バージョンのプリンタドライバをサポートセンターＰＣ１０２にインストールする作業を行う。プリンタドライバを同一のバージョンにする理由は、ユーザＰＣ１０１にインストールされたプリンタドライバのバージョンが異なる場合、内部的な処理が変更されている可能性があるため、実際に不具合が発生したバージョンのプリンタドライバを用いることが不具合発生原因を特定するのに確実だからである。これにより、印刷設定を行う際に生じた不具合の原因を短期間で特定することができる。
【００６１】
具体的には、ユーザＰＣ１０１から受信した印刷設定手順記録ファイルのファイル名に記載されたプリンタドライバのバージョンと、サポートセンターＰＣ１０２にインストールされているプリンタドライバのバージョンとを比較する。サポートセンターＰＣ１０２にインストールされているプリンタドライバのバージョンが異なっていれば、インストールされているプリンタドライバをアンインストールし、ユーザＰＣ１０１の環境と同一バージョンのプリンタドライバをインストールする。そして、プリンタドライバのＵＩを起動し、印刷設定が変更できる状態に移行する。この一連の作業は、情報解析を行う情報解析モジュール３０５により実施される。なお、プリンタドライバのバージョン情報は、印刷設定手順記録ファイル内に記載されているものを利用してもよい。
【００６２】
次に、オープンした印刷設定手順記録ファイルから不具合発生直前におけるデフォルトからのコントロール変更差分を取得する（ステップＳ８０３）。この変更差分を取得する理由は、上述した通り、取得した変更差分に基づいてサポートセンターＰＣ１０２のプリンタドライバの印刷設定を変更することにより、最小限の設定変更でユーザが所望する印刷設定（ＤＥＶＭＯＤＥ設定）にすることができるためである。図１３に示す印刷設定手順記録ファイルでは、符号１３１１の内容（アクション）により不具合が発生しているため、その直前の符号１３０９に記載されている変更差分が、ユーザ所望の印刷設定変更の内容となる。
【００６３】
次に、この変更差分をどのような順序で設定すれば、ユーザが所望する印刷設定（ＤＥＶＭＯＤＥ設定）となるかを確認する。つまり、この変更差分に基づいて設定することが可能なすべての印刷設定順序を印刷設定パターンとして生成するパターン生成処理を行う（ステップＳ８０４）。詳細は後述するが、具体的には、公知の順列組み合わせ発生プログラムに変更差分を与えることにより、すべての変更順序（印刷設定パターン）を網羅する。このすべての印刷設定パターンを網羅し、ファイルに書き出したものの一例を図１７に示す。
【００６４】
次に、サポートセンターＰＣ１０２内のプリンタドライバの印刷設定をデフォルトに設定した後（ステップＳ８０５）、ステップＳ８０４にて生成された印刷設定パターンに従って印刷設定を行う（ステップＳ８０６）。具体的には、生成された印刷設定パターンを１パターンずつサポートセンターＰＣ１０２内のプリンタドライバに設定し、設定した印刷設定手順を記録する。
【００６５】
次に、サポートセンターＰＣ１０２内のプリンタドライバに印刷設定パターンを設定した結果、不具合が発生したか否かの判別を行う（ステップＳ８０７）。不具合が発生したか否かの判別方法は、印刷設定パターンを印刷設定する際にタイマーを設定し、タイマー設定時間内にプリンタドライバから制御が返ってくるかどうかで判定を行う。制御が返ってこない場合には、不具合が発生したとみなし、処理をステップＳ８１１へ進め、他の印刷設定パターンをプリンタドライバに設定する。一方、制御が返ってきた場合には、次のステップＳ８０８に進む。なお、プリンタドライバが原因でＯＳが落ちるような不具合の場合には、手動で再起動を行う必要があるが、再起動後も引き続きチェックを行うことが可能である。
【００６６】
次に、ステップＳ８０８にて、設定された印刷設定パターンに基づく印刷設定手順に不具合発生時と同一の内部メモリ情報が存在するか否かを判別する。図１３の「メモリ状況」欄１３０５で説明したように、不具合発生時と同一の内部メモリ情報が存在しているメモリ状況自体は不安定な状態であり、それを除外するためである。したがって、同一の内部メモリ情報がメモリ状況に存在している印刷設定手順は回避方法とすることができない。
【００６７】
図１３では、符号１３０８に示す内部メモリ情報の直後に符号１３１１のアクションが実行されたことで不具合が発生したため、符号１３０８と同一の内部メモリ情報を有する図１８の符号１８０２では、同一の不具合が発生することになる。なお、不具合が発生したメモリ状況と同じメモリ状況とは、内部メモリ情報が図１８の符号１８０２の位置に存在するとは限らず、メモリ状況１８０１中のいずれかに存在していることを意味する。
【００６８】
次に、ステップＳ８０９にて、設定された印刷設定パターンに基づく印刷設定手順に同一のＤＥＶＭＯＤＥが構築されているか否かを判別する。ＤＥＶＭＯＤＥは、ＵＩ上にない設定値も含まれているため、印刷設定手順が異なれば、ＤＥＶＭＯＤＥが異なってしまう可能性があるからである。このＤＥＶＭＯＤＥが同じであれば、ユーザが所望した印刷設定であり、逆にＤＥＶＭＯＤＥが異なれば、ユーザが所望したものとは異なる印刷設定である。
【００６９】
図１９では、図１３の符号１３０８と同じメモリ情報がメモリ状況１９０１には存在せず、かつ図１３の符号１３１０と同じＤＥＶＭＯＤＥが符号１９０２に存在する場合を示す。このように、同一のＤＥＶＭＯＤＥが構築されているか否かは、「ＤＥＶＭＯＤＥ状況」欄の最後の設定値が互いに同一か否かを比較する。
【００７０】
ステップＳ８０９の判別の結果、同一のＤＥＶＭＯＤＥが構築されている場合は、ユーザ所望の印刷設定が成されたと判断し、ステップＳ８０６で設定された印刷設定パターンから図２０に示す回避策リストを作成する（ステップＳ８１０）。このとき、作成された回避策リスト上の印刷設定パターンの最後には、図１３の符号１３１１のアクション（最後の設定値）を追加する。これは、ユーザ所望の印刷設定を反映させるためである。例えば、ユーザが「給紙部」１１０１の設定を「自動」から「カセット１」に変更しようとした際に不具合が発生したので、そのアクションがユーザ所望の印刷設定変更の内容となる。なお、既に回避策リストが作成されていたときは、ステップＳ８０６で設定された印刷設定パターンを回避策リストに追加する。
【００７１】
次に、ステップＳ８１１にて印刷設定パターンが存在しないときは、一番最初に出現した回避策以外を回避策リストから削除し（ステップＳ８１２）、印刷設定手順記録ファイルをクローズして（ステップＳ８１３）、本処理を終了する。
【００７２】
本処理により、再度同じ原因の不具合を発生させないようにすることができ、情報処理装置（サポートセンター）への問い合わせ回数を減少させることができる。また、より多くの同一の不具合設定情報が情報処理装置に蓄積されることにより、開発者側が不具合を解析する際の情報としても活用することができる。
【００７３】
なお、上記ステップＳ８１２では、一番最初の回避策のみに絞っているが、これに限らず、必要な数の回避策を絞ってもよい。また、ステップＳ８１２の処理を行わず、回避策リストに作成されたものすべてを残すようにしてもよい。
【００７４】
また、ユーザが印刷設定ＵＩのタブを切り替える回数ができるだけ少なくなる回避策に絞ってもよい。具体的には、印刷設定ＵＩにおいて設定可能なコントロール名称をタブ毎にグループ化し、グループ間の移動が最も少なく済む回避手段に絞る方法が考えられる。
【００７５】
図９は、図８のステップＳ８０３のパターン生成処理の詳細を示すフローチャートである。
【００７６】
まず、ステップＳ９０１では、デフォルトからのコントロール変更差分を取得する。次に、公知の順列組み合わせ発生プログラムによりすべてのパターンを網羅する。図１７に示す例では、図１３における１３０９欄のデフォルトからのコントロール変更差分「出力用紙サイズＡ３」、「部数５」、及び「スタンプＯＮ」についての６パターンがリストアップされている。つづいて、ステップＳ９０３にて、印刷設定パターンファイルに書き込みを行い、本処理を終了する。
【００７７】
上記実施の形態によれば、ユーザにより印刷設定ＵＩ上で行われた印刷設定手順を印刷設定手順記録ファイルとして記録する（ステップＳ５０１〜Ｓ５０７）ので、不具合発生時の印刷設定手順が記録されることにより、サポートセンター担当者あるいはＳＥが不具合再現手順を確認するための無駄な時間を削減することができる。
【００７８】
また、ユーザＰＣ１０１により記録された印刷設定手順記録ファイルを受信したサポートセンターＰＣ１０２では、オープンした印刷設定手順記録ファイルに基づいて、ユーザＰＣ１０１にて発生した不具合操作手順を特定し（ステップＳ７０１〜Ｓ７０６）、更に、印刷設定手順記録ファイルからユーザＰＣ１０１と同一のソフトウェア環境を構築すると共に（ステップＳ８０２）、デフォルトからのコントロール変更差分を取得して（ステップＳ８０３）、該コントロール変更差分から少なくとも１つの印刷設定パターンを生成し（ステップＳ８０４）、不具合の発生しない印刷設定を特定し（ステップＳ８０７〜Ｓ８０９）、不具合回避方法としてユーザに送信するので、印刷設定を行う際に生じた不具合の原因を短期間で特定すると共に、不具合が生じない印刷設定手順を容易に調査することができる。
【００７９】
また、各ユーザから送られてくる不具合情報（同一原因リスト）を蓄積してユーザに送付することにより、再度同じ原因の不具合を発生させないようにしてサポートセンターへの問い合わせ回数を減少させると共に、その情報を開発者が活用することによりバグフィックスをするため期間を短縮することができる。更に、回避策リストを即時に作成し、ユーザに送付することにより、ユーザは開発者側の調査結果を待つことなく、所望の設定を簡便な手順にて実現することが可能となる。
【００８０】
本発明の目的は、上記実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出して実行することによっても達成される。
【００８１】
この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００８２】
また、プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【００８３】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部又は全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれる。
【００８４】
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれる。
【図面の簡単な説明】
【００８５】
【図１】本発明の実施の形態に係る情報処理装置を含む印刷支援システムの全体構成を示すシステム構成図である。
【図２】図１のユーザＰＣ１０１及びサポートセンターＰＣ１０２のソフトウェア構成を示す図である。
【図３】図１の印刷支援システムにおける制御処理を示すチャートである。
【図４】図２の印刷設定手順記録処理モジュール３０３により実行される印刷設定手順記録処理を示すフローチャートである。
【図５】図４のステップＳ４０４の印刷設定手順記録処理の詳細を示すフローチャートである。
【図６】図２の印刷設定手順情報解析モジュール３０６により実行される情報解析処理を示すフローチャートである。
【図７】図６のステップＳ６０１の同一原因検索処理の詳細を示すフローチャートである。
【図８】図６のステップＳ６０２の回避方法特定処理の詳細を示すフローチャートである。
【図９】図８のステップＳ８０３のパターン生成処理の詳細を示すフローチャートである。
【図１０】図２のプリンタドライバ３０２のユーザインターフェースの一例を示す図である。
【図１１】図２のプリンタドライバ３０２のユーザインターフェースの一例を示す図である。
【図１２】図２のプリンタドライバ３０２のユーザインターフェースの一例を示す図である。
【図１３】図５の処理により作成される印刷設定手順記録ファイルの一例を示す図である。
【図１４】図７の処理にて検索された不具合操作手順の一例を示す図である。
【図１５】図７の処理にて検索された不具合操作手順の一例を示す図である。
【図１６】図７の処理にて作成された同一原因リストの一例を示す図である。
【図１７】図８の処理にて作成された印刷設定パターンリストの一例を示す図である。
【図１８】印刷設定パターンに従って設定された印刷設定手順の一例を示す図である。
【図１９】印刷設定パターンに従って設定された印刷設定手順の一例を示す図である。
【図２０】図８の処理にて作成された回避策リストの一例を示す図である。
【図２１】ユーザに送信する回避策リストの一例を示す図である。
【符号の説明】
【００８６】
１０１  ユーザＰＣ
１０２  サポートセンターＰＣ１０２
１０３  インターネット
１０４  プリンタ
３０２  印刷制御モジュール（プリンタドライバ）
３０３  印刷設定手順記録処理モジュール
３０５  情報解析モジュール
３０６  印刷設定手順情報解析モジュール
【図１】
2006011876.tif 000003
【図２】
2006011876.tif 000004
【図３】
2006011876.tif 000005
【図４】
2006011876.tif 000006
【図５】
2006011876.tif 000007
【図６】
2006011876.tif 000008
【図７】
2006011876.tif 000009
【図８】
2006011876.tif 000010
【図９】
2006011876.tif 000011
【図１０】
2006011876.tif 000012
【図１１】
2006011876.tif 000013
【図１２】
2006011876.tif 000014
【図１３】
2006011876.tif 000015
【図１４】
2006011876.tif 000016
【図１５】
2006011876.tif 000017
【図１６】
2006011876.tif 000018
【図１７】
2006011876.tif 000019
【図１８】
2006011876.tif 000020
【図１９】
2006011876.tif 000021
【図２０】
2006011876.tif 000022
【図２１】
2006011876.tif 000023