"ユーザによる設定が可能な設定項目における設定値を含む設定情報が記憶された記憶手段を有する画像処理装置であって、画像処理を実行した際に、前回実行した画像処理における設定値から前記ユーザにより変更された差分設定値を抽出する抽出手段と、前記抽出手段により抽出された差分設定値を、画像処理を実行するたびに履歴として保持する保持手段と、前記保持手段により保持された差分設定値を用いて、前記記憶手段に記憶された前記設定情報を復元可能な復元手段とを備えたことを特徴とする画像処理装置。前記ユーザにより、設定値が変更された時刻を示す時間情報を前記設定情報に追加し、前記抽出手段は、前記時間情報を用いて、前記ユーザにより変更された差分設定値を抽出することを特徴とする請求項1記載の画像処理装置。前記復元手段により復元された差分設定値の一覧を表示することを特徴とする請求項1又は2記載の画像処理装置。前記抽出手段は、予め定められたユーザによって変更された設定値を、差分設定値として抽出しないことを特徴とする請求項1乃至3のいずれか1項に記載の画像処理装置。ユーザによる設定が可能な設定項目における設定値を含む設定情報が記憶された記憶手段を有する画像処理装置の制御方法であって、画像処理を実行した際に、前回実行した画像処理における設定値から前記ユーザにより変更された差分設定値を抽出する抽出ステップと、前記抽出ステップにより抽出された差分設定値を、画像処理を実行するたびに履歴として保持する保持ステップと、前記保持ステップにより保持された差分設定値を用いて、前記記憶手段に記憶された前記設定情報を復元可能な復元ステップとを備えたことを特徴とする制御方法。ユーザによる設定が可能な設定項目における設定値を含む設定情報が記憶された記憶手段を有する画像処理装置の制御方法をコンピュータに実行させるためのプログラムであって、前記制御方法は、画像処理を実行した際に、前回実行した画像処理における設定値から前記ユーザにより変更された差分設定値を抽出する抽出ステップと、前記抽出ステップにより抽出された差分設定値を、画像処理を実行するたびに履歴として保持する保持ステップと、前記保持ステップにより保持された差分設定値を用いて、前記記憶手段に記憶された前記設定情報を復元可能な復元ステップとを備えたことを特徴とするプログラム。しかしながら、これら方法ではジョブに関連する設定値の差分のみ抽出しており、ジョブに直接関連していない設定値ネットワーク、言語設定等、デジタル複合機の装置自身に関する設定までは網羅されない。また、ジョブに関連していない設定値の復元も考慮されていない。現状の複合機には多くの機能コピー、プリント、スキャナ、FAX、ネットワーク等が搭載されており、それら個々の機能が互いに連携している状態でユーザは要望に応じて様々な設定が可能である。ユーザはこれら機能を操作するために複雑な操作を行いジョブ実行するが、結果が必ずしも意図した通りになるとは限らず、設定値を元に戻すもしくは以前実行した設定値と同じにしたいと思う。上述した複雑な操作や、過去に行った操作を再現することは困難であり、問題とするジョブ実行結果の直前の設定値に全て戻す、または過去のある特定のジョブの実行結果で使用した設定値を復元するといったことが要求される事象が考えられる。本発明の目的は、種々の設定項目を有する画像処理装置において、ユーザが変更した設定項目に対応する設定値を容易に復元可能な画像処理装置及びその制御方法、並びにプログラムを提供することにある。上記目的を達成するために、請求項1の画像処理装置は、ユーザによる設定が可能な設定項目における設定値を含む設定情報が記憶された記憶手段を有する画像処理装置であって、画像処理を実行した際に、前回実行した画像処理における設定値から前記ユーザにより変更された差分設定値を抽出する抽出手段と、前記抽出手段により抽出された差分設定値を、画像処理を実行するたびに履歴として保持する保持手段と、前記保持手段により保持された差分設定値を用いて、前記記憶手段に記憶された前記設定情報を復元可能な復元手段とを備えたことを特徴とする。本発明によれば、種々の設定項目を有する画像処理装置において、ユーザが変更した設定項目に対応する設定値を容易に復元可能な画像処理装置及びその制御方法、並びにプログラムを提供することができる。以下、本発明の実施の形態について図面を参照しながら詳述する。図1は、本実施形態における画像処理装置100のソフトウェア構成を示す図である。本実施形態において、画像の入出力と送受信、及び各種の画像処理を行う複合機MFP:MultiFunctionPeripheralを画像処理装置100の一例として説明する。図1において、画像処理装置100においては、ユーザインタフェース以下、UIモジュール201が搭載されている。このUIモジュール201は、ユーザが画像処理装置100に対する各種操作設定を行う際に、機器とユーザ操作との仲介を行うモジュールである。このUIモジュール201は、ユーザの操作に従い、後述の各種モジュールに入力情報を転送して処理の依頼、またはデータの設定などを行う。また、アドレスブックAddress-Bookモジュール202は、データの送付先、通信先などを管理するデータベースモジュールである。アドレスブックモジュール202が管理するデータに関しては、UIモジュール201からの操作によりデータの追加、削除、取得が可能である。また、アドレスブックモジュール202は、ユーザの操作により後述の各モジュールにデータの送付通信先情報を与える。また、ウェブサーバモジュールWeb-Serverモジュール203は、ウェブクライアントからの要求により、画像処理装置100の管理情報をウェブクライアントに通知する。上記管理情報は、後述する統合送信部モジュール204、リモートコピースキャンモジュール209、リモートコピープリントモジュール210、制御APIモジュール218を介して取得される。さらに、管理情報は、後述するHTTPモジュール212、TCP/IP通信モジュール216、ネットワークドライバNetwork-Driver217を介してウェブクライアントに通知される。また、ウェブブラウザWebBrowserモジュール211は、インターネットまたはイントラネット上の各種ウェブサイトホームページの情報を読み込んで表示を行う。このウェブブラウザモジュール211の詳細な構成は後述する。統合送信部Universal-Sendモジュール204は、データの配信を司るモジュールであり、UIモジュール201を介してユーザによって指示されたデータを、同様にして指示された通信出力先に配布する。また、統合送信部モジュール204は、ユーザにより画像処理装置100のスキャナ機能が使用され、配布データの生成が指示された場合は、制御APIモジュール218を介して機器を動作させ、配布データの生成を行う。さらに、統合送信部モジュール204は、P550モジュール205、E-mailモジュール206、DBモジュール207、及びDPモジュール208を含む。P550モジュール205は、出力先にプリンタが指定された際に実行されるモジュールである。E-mailモジュール206は、通信先にE-mailアドレスが指定された際に実行されるモジュールである。DBモジュール207は、出力先にデータベースが指定された際に実行されるモジュールである。DPモジュール208は、出力先に画像処理装置100と同様の画像処理装置が指定された際に実行されるモジュールである。リモートコピースキャンRemote-Copy-Scanモジュール209は、画像処理装置100のスキャナ機能を使用して画像情報を読み取り、読み取った画像情報をネットワーク等で接続された他の画像処理装置に出力する。これによって、画像処理装置単体で実現しているコピー機能を他の画像処理装置を使って行うことを可能にする。リモートコピープリントRemote-Copy-Printモジュール210は、ネットワーク等で接続された他の画像処理装置で得られた画像情報を、画像処理装置100のプリンタ機能を使用して出力する。これによって、画像処理装置100単体で実現しているコピー機能を他の画像処理装置を使って行うことを可能にする。設定値管理コントローラConfigSettingControllerモジュール230は画像処理装置100の操作部102からの操作によって変更された設定値を、設定値DBを用いて管理し、ユーザの操作に応じて変更、更新を行う。また、ジョブが実行された後、設定値の差分が抽出された差分設定値DBを、後述するジョブ情報マネージャ231を通して履歴情報として保存する。設定値を復元する場合もジョブ情報マネージャ231を通して過去の設定値を呼び出し復元することを可能にする。TCP/IP通信モジュール216は、ネットワークドライバ217を用いて、前述の各種モジュールにネットワーク通信機能を提供する。ネットワークドライバ217は、ネットワークに物理的に接続される部分を制御するものである。HTTPモジュール212は、画像処理装置100がHTTPによる通信を行う際に使用され、TCP/IP通信モジュール216を使って、ウェブサーバモジュール203やウェブブラウザモジュール211に通信機能を提供する。また、このHTTPモジュール212は、HTTPをはじめとするウェブで用いられる各種プロトコルに対応し、特にセキュリティ対応したプロトコルによる通信機能を提供する。lprモジュール213は、TCP/IP通信モジュール216を使って、統合送信部モジュール204内のモジュール205に通信機能を提供する。SMTPモジュール214は、TCP/IP通信モジュール216を使って、統合送信部モジュール204内のE-mailモジュール206に通信機能を提供する。SLMSalutation-Managerモジュール215はTCP/IP通信モジュール216を使って、下記モジュールの各々に通信機能を提供する。そのモジュールは、DBモジュール207、DPモジュール208、リモートコピースキャンモジュール209、及びリモートコピープリントモジュール210である。制御APIモジュール218は、統合送信部モジュール204などの上流モジュールに、後述するジョブマネージャモジュールJob-Manager219などの下流モジュールに対するインタフェースを提供するものである。これによって、上流および下流のモジュール間の依存関係が軽減され、それぞれの流用性を高めることができる。ジョブマネージャモジュールJob-Manager219は、前述の各種モジュールから制御APIモジュール218を介して指示される様々な処理を解釈し、後述の各モジュール220,224,226、231に指示を与えるものである。また、ジョブマネージャモジュール219は、画像処理装置100内で実行されるハード的な処理を一元管理するものである。コーデックマネージャCODEC-Managerモジュール220は、ジョブマネージャモジュール219が指示する処理の中で、データの各種圧縮伸長を管理制御する。FBEエンコーダモジュールFBE-Encoder229は、ジョブマネージャモジュール219や後述するスキャンマネージャScan-Managerモジュール224によって実行されたスキャン処理によって読み込まれたデータを圧縮する。この圧縮では、FBEフォーマットが用いられる。JPEGコーデックモジュールJPEG-CODEC222は、読み込まれたデータのJPEG圧縮および印刷データのJPEG展開処理を行う。読み込みはジョブマネージャモジュール219やスキャンマネージャモジュール224によって実行されたスキャン処理、またはプリントマネージャPrint-Managerモジュール226によって実行された印刷処理で行われる。MMRコーデックMMR-CODECモジュール223は、読み込まれたデータのMMR圧縮および印刷データのMMR伸長処理を行う。読み込みはジョブマネージャモジュール219やスキャンマネージャモジュール224によって実行されたスキャン処理、またはプリントマネージャモジュール226によって実行された印刷処理で行われる。スキャンマネージャScan-Managerモジュール224は、ジョブマネージャモジュール219が指示するスキャン処理を管理制御する。スキャンマネージャモジュール224と画像処理装置100に内部的に接続しているスキャナ103との間の通信が、SCSIドライバ225を介して行われる。プリントマネージャPrint-Managerモジュール226は、ジョブマネージャモジュール219が指示する印刷処理を管理制御する。プリントマネージャモジュール226とプリンタ104との間のインタフェースがエンジンインタフェースEngine-インタフェースモジュール227により提供される。パラレルポートドライバ228は、パラレルポートを介して不図示の出力機器にデータを出力する際のインタフェースを提供する。ジョブ情報マネージャ231は実行されたジョブ情報の履歴を保存、表示する機能を提供する。ジョブの履歴情報には設定値情報が付加されており必要に応じて過去の設定値情報を提供することが可能である。図2は、図1における設定管理コントローラモジュールの詳細構成を示す図である。設定管理部106は画像処理装置100の設定値の入出力を管理し、各設定項目をデータベース以下、設定値DBというによって管理している。この設定値DBは、ユーザによる設定が可能な設定項目における設定値を含む設定情報に対応している。設定値差分抽出部108はジョブ実行前に変更された設定値の項目を、設定された時間情報をもとに抽出し設定値の差分設定値データベース以下、差分設定値DBというを作成する。この差分設定値DBはジョブ情報管理部109によってジョブの実行結果とともに履歴情報として保存される。ユーザはこの履歴情報から過去の履歴を閲覧でき、目的に応じて過去の設定値を選択し設定値復元部107を用いて設定値DBを復元することができる。図3は、画像処理装置100のハードウェア構成を示す図である。図3において、コントローラユニット101は、上述したようにスキャナ103、プリンタ104、及び操作部102と接続し、これらを制御する一方、LANや公衆回線と接続され、これらを介して画像情報やデバイス情報の入出力を行う。CPU301は、システムバス307を介して、RAM302、ROM303、Flash304、イメージバスインタフェース305、操作部インタフェース306、ネットワークインタフェース308、及びモデム309と接続される。CPU301は、さらにHDD317、設定値管理部318、ジョブ情報管理部319、及びネットワークインタフェース308と接続される。CPU301は、図1、図2に示した各ソフトウェアを実行する。RAM302は、CPU301の作業領域を提供するためのメモリであり、また、画像データを一時記憶するための画像メモリとしても使用される。ROM303はブートROMであり、ROM303には、システムのブートプログラムが格納されている。Flash304には、システムソフトウェア、設定値データなどが格納される。操作部インタフェース306は、操作部102との間で入出力を行うためのインタフェースであり、操作部102に表示する画像データを操作部102に対して出力し、ユーザが操作部102を介して入力した情報を、CPU301に伝送するなどの役割を果たす。ネットワークインタフェース308は、LANと接続され、LANに対して情報の入出力を行う。モデム309は、公衆回線と接続され、公衆回線に対して情報の入出力を行う。イメージバスインタフェース305は、システムバス307と画像データを高速で転送する画像バス310とを接続し、データ構造を変換するバスブリッジである。HDD317はユーザが着脱可能なユニットであり、画像データやアドレス帳データ及びジョブ履歴情報などが保持される。また、HDDには、上記設定値DBが記憶される記憶手段であり、また差分設定値DBが保持される。また、HDD317には図1、図2に示したソフトウェアが格納される。設定値管理部318は操作部102からの操作によって変更された設定値の保存、復元、ジョブ実行前後の設定値の差分抽出を行う。ジョブ情報管理部319はジョブの実行後の履歴情報を保存、表示するモジュールであり設定値管理部318が抽出した差分を保存することができる。また設定値管理部318が設定値を復元する場合、このジョブ情報管理部319から過去の設定値を提供することができる。画像バス310には、RIPラスタイメージプロセッサ311、デバイスインタフェース312、スキャナ画像処理部313、プリンタ画像処理部314、画像回転部315、及び画像圧縮部316が接続されている。RIP311は、LANから受信されたPDLコードをビットマップイメージに展開する。デバイスインタフェース312は、スキャナ103及びプリンタ104とコントローラユニット101とを接続し、画像データの同期系/非同期系の変換を行う。スキャナ画像処理部313は、入力画像データに対し補正、加工、編集などを行う。プリンタ画像処理部314は、プリント出力画像データに対して、プリンタの補正、解像度変換などを行う。画像回転部315は、画像データの回転を行う。画像圧縮部316は、多値画像データに対してはJPEG圧縮伸長処理を行い、2値画像データに対してはJBIG,MMR,MHなどの圧縮伸長処理を行う。図4は、差分設定値DBを作成する過程を示す図である。図4において、左から変更前の設定値DB、変更後の設定値DB、差分設定値DBが示されている。設定値DBは、例としてPrintSettings、NetworkSettings、DeviceSettings、及びCopySettingsが項目として挙げられ、それらがrootからぶら下がる構造となっている。このように、画像処理装置100は種々の設定項目を有する。なお、これらの設定値は、画像処理装置100が実行するジョブに対する設定値ではなく、画像処理装置自身に関する設定値である。また、各項目において、いくつかの設定内容が存在する。例えば、PrintSettingsでは、CDEFGHIJの8つの設定内容が存在する。このように、設定値DBには、各項目の設定内容が書き込まれている。また、設定値DBには、設定値が変更された場合にその時間情報が追加される。この時間情報は、設定値が変更された際の時刻情報である。操作部102のUIパネル等でユーザが操作することで、設定値が変更されると、図に示される設定値DBとなる。図4において、変更された項目は斜線で示している。設定値の変更は、この設定値DBにアクセスすることにより行われるため、時刻情報はアクセス時刻となり、それが保存される。設定値が変更され、ジョブが実行されると、変更された項目PrintSettingsのFI、CopySettingsのNOが差分設定値DBとして抽出される。こうして抽出されることで作成された差分設定値DBは、設定変更後に実行したジョブのジョブ履歴に関連付けて記録される。差分設定値DBには、変更のあった設定項目について、変更前の設定値と変更後の設定値とが記録される。図5は、差分設定値DBを設定値DBに復元する過程を示す図である。図5において、左から差分設定値DB、復元された設定値DBが示されている。上述したように、ジョブ履歴には差分設定値DBが関連付けられているのでユーザは復元した過去のジョブ履歴を見て任意に選択することで、対応する差分設定値DBを得ることができる。この差分設定値を用いれば、あとは各項目の設定値を差分設定値DBに記録されている変更前の設定値を用いて設定値DBに上書きすることで、設定値を復元することができる。なお、このときの変更時刻は、復元された時刻が設定される。図6は、図3におけるCPU301により実行される履歴保存処理の手順を示すフローチャートである。図6において、操作部102でユーザにより設定値が変更されたか否か判別するステップS601。ステップS601の判別の結果、設定値が変更されなかったときステップS601でNO、本処理を終了する。一方、ステップS601の判別の結果、設定値が変更されたときステップS601でYES、変更された項目の設定値を変更しステップS602、設定値DBの変更された項目に変更時刻を追加するステップS603。すなわち、ユーザにより、設定値が変更された時刻を示す時間情報を設定値DBに追加する。次いで、ステップS604で、ジョブが実行されたか否か判別するステップS604。ステップS604の判別の結果、ジョブが実行されなかったときステップS604でNO、本処理を終了する。ステップS604の判別の結果、ジョブが実行されたときステップS604でYES、設定DBに示される変更時刻でソートしステップS605、ジョブ実行前直近の設定値項目を抽出して、差分設定値DBを作成するステップS606。このステップS606は、画像処理を実行した際に、前回実行した画像処理における設定値からユーザにより変更された差分設定値を抽出する抽出手段に対応する。また、ステップS606では、時間情報を用いて、ユーザにより変更された差分設定値を抽出している。ジョブが正常終了したか否か判別するステップS607。ステップS607の判別の結果、ジョブが正常終了したときステップS607でYES、ジョブ履歴に差分設定値DBを追加しステップS609、本処理を終了する。このステップS609は、抽出された差分設定値を、画像処理を実行するたびに履歴として保持する保持手段に対応する。ステップS607の判別の結果、ジョブが正常終了しなかったときステップS607でNO、差分設定値DBを削除しステップS608、本処理を終了する。上記ステップS606において、予め定められたユーザによって変更された設定値を、差分設定値として抽出しないようにしてもよい。これは、例えば設定値を変更するために画像処理装置にログインしたユーザのうち、例えばシステム管理者に対応するユーザが変更した設定値であることを示す情報を設けておき、この情報に従って設定値を抽出しないようにする。図7は、図3におけるCPU301により実行される復元処理の手順を示すフローチャートである。図7において、ユーザにより、復元したい項目が選択されるステップS701。例えば、ユーザは操作部102に表示されるジョブ履歴の一覧の中から所望のジョブ履歴を選択する。すると、選択されたジョブ履歴に関連付けて記録されている差分設定値DBが特定される。次いで、差分設定値DBを参照し、ユーザにより選択された項目で、復元可能な差分設定値があるか否か判別するステップS702。ステップS702の判別の結果、復元可能な差分設定値がないときステップS702でNO、本処理を終了する。一方、ステップS702の判別の結果、復元可能な差分設定値があるときステップS702でYES、差分設定値DBに示される差分設定値に含まれる変更前の設定値を用いて設定値DBを復元するステップS703。そして、復元した各項目の変更時刻を更新してステップS704、本処理を終了する。上記ステップS703は、保持された差分設定値を用いて、HDD317に記憶された設定値DBを復元可能な復元手段に対応する。また、復元された差分設定値の一覧を表示するようにしてもよい。図6、7の処理によれば、ジョブを実行した際に、前回実行したジョブにおける設定値からユーザにより変更された差分設定値を抽出しステップS606、抽出された差分設定値を、ジョブを実行するたびに履歴として保持するステップS609。そして、保持された差分設定値を用いて、HDD317に記憶された設定情報を復元可能となっている。その結果、種々の設定項目を有する画像処理装置において、ユーザが変更した設定項目に対応する設定値を容易に復元可能となる。なお、本実施形態では、設定値DBと差分設定値DBとを用いて変更された設定値の内容を記録するように構成したがこのような構成に限定されることは無い。例えば、ユーザにより設定値の変更が行われる毎に、その時点での設定値の内容を全て、即ち、変更が行われた設定値と変更が行われていない設定値とを、ジョブの履歴に関連付けて記録するようにしても良い。以上説明した実施の形態においては、設定値が変更された場合、時間情報を更新していた。しかし、各項目にフラグを設けておいても同様な機能を実現できる。この場合差分設定値DBを復元する場合に時間情報に相当するフラグを参照することによって、時間情報を用いた場合の処理と同様に復元することが可能である。他の実施の形態本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェアプログラムをネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ又はCPUやMPU等がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。"