通信を制御する通信制御手段を備えた通信装置であって、前記通信制御手段が、該通信制御手段に通信のプロトコルを実行させるための通信プログラムの参照先情報と設定情報とを登録する登録手段と、前記通信プログラムの実行を指示する実行指示手段と、該実行指示手段によって実行が指示された場合、前記登録手段に登録された参照先情報と設定情報とに基づいて前記通信プログラムを参照して実行させる実行手段と、外部から通信のプロトコルを実行させるための通信プログラムの登録要求と共に該通信プログラムの参照先情報と設定情報とを受け取った場合、前記登録手段に前記受け取った参照先情報と設定情報とを登録し、外部から前記登録手段に登録された参照先情報の登録解除要求があった場合、前記登録手段から前記登録解除要求があった参照先情報と設定情報とを削除する登録削除制御手段とを有することを特徴とする通信装置。前記通信プログラムを実行させた場合、該実行の開始又は終了で発生した異常を検知する検知手段と、該検知手段によって異常を検知した場合、該異常に対して予め決められた処理を実行する手段とを設けたことを特徴とする請求項1記載の通信装置。通信装置の通信を制御するコンピュータに、通信のプロトコルを実行させるための通信プログラムの参照先情報と設定情報とを登録する登録手順と、所定のタイミングを検知した場合に通信プログラムの実行を指示する実行指示手順と、該実行指示手順によって実行を指示した場合、前記登録手順によって登録した参照先情報と設定情報とに基づいて前記通信プログラムを参照して実行させる実行手順と、外部から通信のプロトコルを実行させるための通信プログラムの登録要求と共に該通信プログラムの参照先情報と設定情報とを受け取った場合、前記登録手順によって前記受け取った参照先情報と設定情報とを登録し、外部から前記登録手順によって登録された参照先情報の登録解除要求があった場合、前記登録手順によって登録された前記登録解除要求があった参照先情報と設定情報とを削除する登録削除制御手順とを実行させるためのプログラム。前記通信プログラムを実行させた場合、該実行の開始又は終了で発生した異常を検知する検知手順と、該検知手順によって異常を検知した場合、該異常に対して予め決められた処理を実行する手順とを含めて前記通信装置の通信を制御するコンピュータに実行させるための請求項3記載のプログラム。しかしながら、従来の通信装置では、新たなプロトコルの通信プログラムを追加搭載ともいうしたり既に搭載されている通信プログラムを削除非搭載ともいうしたりする場合、その通信プログラムを実行するネットワーク制御部が実行すべき通信プログラムを認識できるように、ネットワーク制御部のソースコードを修正しなければならなかった。したがって、通信装置に対する通信プログラムの追加や削除が容易にできないという問題があった。この発明は上記の点に鑑みてなされたものであり、通信装置に対する通信のプロトコルを実現するための通信プログラムの追加や削除が容易にできるようにすることを目的とする。この発明は上記の目的を達成するため、通信を制御する通信制御手段を備えた通信装置であって、上記通信制御手段が、その通信制御手段に通信のプロトコルを実行させるための通信プログラムの参照先情報と設定情報とを登録する登録手段と、上記通信プログラムの実行を指示する実行指示手段と、その実行指示手段によって実行が指示された場合、上記登録手段に登録された参照先情報と設定情報とに基づいて前記通信プログラムを参照して実行させる実行手段と、外部から通信のプロトコルを実行させるための通信プログラムの登録要求と共にその通信プログラムの参照先情報と設定情報とを受け取った場合、上記登録手段に上記受け取った参照先情報と設定情報とを登録し、外部から上記登録手段に登録された参照先情報の登録解除要求があった場合、上記登録手段から上記登録解除要求があった参照先情報と設定情報とを削除する登録削除制御手段を有する通信装置を提供する。この発明による通信装置とプログラムは、通信装置に対する通信のプロトコルを実現するための通信プログラムの追加や削除が容易にできる。以下、この発明を実施するための形態を図面に基づいて具体的に説明する。図2は、この発明の一実施形態であるプリンタ1のハードウェア構成例を示すブロック図である。プリンタ1以下機器ともいうは、オペレーションパネル2、CPU3、ASICApplicationSpecificIntegratedCircuit4、RAM5、ROM6、ネットワーク制御部7、HDD8、及びエンジン部9を備えた画像形成装置である。それらのうち、CPU3、ASIC4、RAM5、ROM6、ネットワーク制御部7、およびHDD8が、印刷用の画像データを作成する画像処理装置であるコントローラを構成する。オペレーションパネル2は、ユーザがプリンタ1に対して各種の動作要求印刷要求、送信要求等を入力するための各種の操作キー操作スイッチ又は操作ボタンともいう、及びユーザに各種の情報や作業画面を表示するLCD又はCRT等の表示器を有する操作部である。CPU3は、後述するプログラムに従ってプリンタ1の全体を統括的に制御する中央処理装置である。このCPU3は、自己に内蔵されているモジュール及び自己にASIC4を介して接続されている各種デバイスの入出力を制御したり、エンジン部9による印刷処理を実現するためのプリンタアプリを実行することができる。ASIC4は、オペレーションパネル2、CPU3、RAM5、ROM6、及びネットワーク制御部7をそれぞれ接続するための複数のインタフェースI/F等からなる多機能デバイスボードであり、CPU3の制御対象となるデバイスの共有化を図り、アーキテクチャの面からアプリケーション等の開発の高効率化を支援するICである。このASIC4は、ここでは画像処理用のハードウェア要素を備えている。RAM5は、CPU3が実行するプログラムを展開するプログラムメモリや、CPU3がプログラムを実行するために作業するワークメモリ、ページ記述言語PageDescriptionLanguage:PDLを含む印刷データに基づいてエンジン部9によって用紙に可視画像を印刷するための印刷用の画像データラスタ画像データを展開する際に使用する画像メモリ等として使用する読み書き可能なメモリ記憶手段である。ROM6は、プリンタ1を制御する際の各種制御プログラム及びデータなどを格納している読み出し専用メモリである。ネットワーク制御部7は、ネットワークを介して外部の情報処理装置PCからの印刷データ又は通信デーモンプログラム詳細は後述するを受信するためのインタフェースである。HDD8は、このプリンタ1で使用するOS、各種通信プロトコルによる通信を実行する通信デーモンプログラムの登録等の各種制御を実現するための各種プログラム、画像処理及び印刷制御を含む各種制御を実現するための各種プログラム、及び印刷設定実際には印刷設定の内容を示すデータを含む各種データや、PCで使用するプリンタドライバ等の各種制御プログラムを格納している補助記憶装置記憶手段である。エンジン部9は、このプリンタ1においてプリント機能を実現するため、画像データ印刷描画データに基づいて、用紙上にレーザ方式、LED方式、又はインクジェット方式等の作像方式や他の方式を用いて画像を印刷して出力するプロッタ画像形成手段を構成している。なお、このプリンタ1の構成を複合機の構成にするのであれば、スキャナ機能やコピー機能を実現するため、エンジン部9がスキャナとプロッタとを含めて構成する。また、そのプロッタは、用紙の両面に印刷を行うための両面ユニットや印刷後の用紙をパンチ加工や表紙成型等の製版過程が可能な機能を付加するフィニッシャなどの周辺機を備えることができる。次に、上記プリンタ1のネットワーク制御部7の機能構成を図1によって説明する。図1は、図2に示したプリンタ1のネットワーク制御部7の機能構成を示すブロック図である。このネットワーク制御部7は、プリンタ1において通信を制御する通信制御手段に相当し、図2のCPU3が、プログラムを実行することによって実現される通信デーモンプログラム実行指示部11、通信デーモンプログラム操作部12、及び登録テーブル13の各機能部を備えている。また、HDD8には、それぞれ異なる種類の通信のプロトコルを実行させるための通信プログラムである第1通信デーモンプログラム14~第4通信デーモンプログラム17の4種類の通信デーモンプログラムを予め記憶している。上記第1通信デーモンプログラム14~第4通信デーモンプログラム17は、プリンタ1に常駐させ、バックグラウンドで動作させるプログラムである。登録テーブル13は、通信デーモンプログラム操作部12が、ネットワーク制御部7において通信のプロトコルを実行させるための通信プログラムを登録する書き換え可能なメモリである記憶部である。ここには、例えば、HTTPプロトコル、LPDプロトコル、IDプロトコル、及びIPPプロトコル等の各種のプロトコル通信をそれぞれ実行する複数の通信プロトコルを登録することができる。この実施形態では、例えば、第1通信デーモンプログラム14~第4通信デーモンプログラム17の4種類の通信プログラムを登録した場合を説明するが、さらに他の通信プロトコルの通信プログラムを登録することもできるし、第1通信デーモンプログラム14~第4通信デーモンプログラム17のいずれか1種類を、または、第1通信デーモンプログラム14~第4通信デーモンプログラム17のいずれか複数個の組み合わせで登録することもできる。この登録テーブル13への登録では、第1通信デーモンプログラム14~第4通信デーモンプログラム17の参照先情報と設定情報とを登録する。上記参照先情報は、HDD8の記憶先アドレスなどの情報であり、上記設定情報は、第1通信デーモンプログラム14~第4通信デーモンプログラム17のそれぞれを動かすための関数値と、それぞれの起動、停止、起動時の各種のモード等の動作を規定する各種の情報である。例えば、IPv4とIPv6の両方を使用できるように動作させる設定や、IPv4とIPv6のいずれか一方を使用できるように動作させる設定ができる。すなわち、登録テーブル13は、ネットワーク制御部7に通信のプロトコルを実行させるための通信プログラムの参照先情報と設定情報とを登録する登録手段の機能を果たす。通信デーモンプログラム実行指示部11は、CPU3からプリンタ1の起動時、又は再起動時に送られる指示を受け取った場合、それをタイミングを検知した場合とし、通信デーモンプログラム操作部12に通信プログラムの実行を指示する。すなわち、上記通信プログラムの実行を指示する実行指示手順の処理を実行し、実行指示手段の機能を果たす。通信デーモンプログラム操作部12は、通信デーモンプログラム実行指示部11から実行が指示された場合、登録テーブル13に登録された参照先情報と設定情報とに基づいて第1通信デーモンプログラム14~第4通信デーモンプログラム17を参照し、その各設定情報に応じて実行する。すなわち、通信デーモンプログラム実行指示部11によって実行が指示された場合、登録テーブル13に登録された参照先情報と設定情報とに基づいて通信プログラムを参照して実行させる実行手順の処理を実行し、実行手段の機能を果たす。また、上記登録テーブル13への登録手順も実行する。また、通信デーモンプログラム操作部12は、第1通信デーモンプログラム14~第4通信デーモンプログラム17がHDD8に記憶された後、最初の起動時にそれぞれの登録要求と共に自プログラムの参照先情報と設定情報とを通信デーモンプログラム操作部12に送信するので、それらを受け取り、登録テーブル13に登録し、さらに、その登録数と第1通信デーモンプログラム14~第4通信デーモンプログラム17の登録完了を通信デーモンプログラム実行指示部11へ通知する。したがって、通信デーモンプログラム実行指示部11は、登録テーブル13に第1通信デーモンプログラム14~第4通信デーモンプログラム17の4個の通信プログラムが登録されていることを認識することができ、CPU3に対して第1通信デーモンプログラム14~第4通信デーモンプログラム17の起動を通知することができる。さらに、通信デーモンプログラム操作部12は、CPU3からHDD8に記憶された第1通信デーモンプログラム14~第4通信デーモンプログラム17のいずれか1つ、複数個の参照先情報の登録解除要求があった場合、登録テーブル13から登録解除要求があった参照先情報と設定情報とを削除する。上記登録テーブル13に第1通信デーモンプログラム14~第4通信デーモンプログラム17を登録することをプリンタ1への搭載と呼び、また、上記登録テーブル13から第1通信デーモンプログラム14~第4通信デーモンプログラム17のいずれか1つ、複数、又は全てを削除することをプリンタ1の非搭載とも呼び、それらの搭載と非搭載をコンフィグレーションという。すなわち、通信デーモンプログラム操作部12は、外部から通信のプロトコルを実行させるための通信プログラムの登録要求と共にその通信プログラムの参照先情報と設定情報とを受け取った場合、登録テーブル13に上記受け取った参照先情報と設定情報とを登録し、外部から登録テーブル13に登録された参照先情報の登録解除要求があった場合、登録テーブル13から上記登録解除要求があった参照先情報と設定情報とを削除する登録削除制御手順の処理を実行し、登録削除制御手段の機能も果たす。さらに、通信デーモンプログラム操作部12は、第1通信デーモンプログラム14~第4通信デーモンプログラム17の通信プログラムのいずれか1つ又は複数を実行させた場合、その実行の開始又は終了で発生した異常を検知する検知手順の処理を実行し、その検知手順によって異常を検知した場合、その異常に対して予め決められた処理を実行する手順も実行する。すなわち、上記通信デーモンプログラム操作部12は、上記通信プログラムを実行させた場合、その実行の開始又は終了で発生した異常を検知する検知手段と、その検知手段によって異常を検知した場合、その異常に対して予め決められた処理を実行する手段の機能も果たす。次に、上記通信デーモンプログラム操作部12の登録テーブル13への登録処理と登録テーブル13からの削除処理を図3によって説明する。図3は、図1に示した通信デーモンプログラム操作部12の登録テーブル13への登録処理と登録テーブル13からの削除処理を示すフローチャート図である。図1に示したHDD8の第1通信デーモンプログラム14~第4通信デーモンプログラム17は、それぞれが記憶された後のプリンタ1の最初の起動時にCPU3によって起動される。そして、第1通信デーモンプログラム14~第4通信デーモンプログラム17は、それぞれ最初の起動時にそれぞれの登録要求と共に参照先情報と設定情報とを通信デーモンプログラム操作部12へ送る。図1に示した通信デーモンプログラム操作部12は、ステップ図3でSと記載する1で、第1通信デーモンプログラム~第4通信デーモンプログラム図3中では第1通信DP~第4通信DPと省略して記載するから登録要求と参照先情報と設定情報を受信したか否かを判断し、受信した場合Yの場合はステップ3へ進み、受信しなかった場合Nの場合はステップ2へ進む。ステップ3では、登録テーブルへの登録処理を実行し、この処理を終了する。上記登録テーブル13への登録処理では、第1通信デーモンプログラム14~第4通信デーモンプログラム17からそれぞれ受け取った参照先情報と設定情報を登録テーブル13に登録し、その登録数この場合4つと第1通信デーモンプログラム14~第4通信デーモンプログラム17の登録完了との通知を通信デーモンプログラム実行指示部11に送信する。こうして、ネットワーク制御部7は、登録テーブル13に登録された参照先情報と設定情報に基いて第1通信デーモンプログラム14~第4通信デーモンプログラム17を実行させることができ、その実行のためにネットワーク制御部7のソースコードを大幅に変更するような手間のかかる作業が不要になる。したがって、プリンタ1に対する通信のプロトコルを実現するための通信プログラムの追加が容易にできるようになる。また、通信デーモンプログラム実行指示部11は、登録テーブル13に第1通信デーモンプログラム14~第4通信デーモンプログラム17の4個の通信プログラムが登録されていることを認識することができ、CPU3に対して第1通信デーモンプログラム14~第4通信デーモンプログラム17の起動を通知することができる。一方、ステップ2では、図2のCPU3から通信デーモンプログラム図3中ではDPと省略して記載するの登録解除要求を受信したか否かを判断し、受信した場合Yの場合はステップ4へ進み、受信しなかった場合Nの場合はこの処理を終了する。ステップ4では、登録テーブルからの削除処理を実行し、この処理を終了する。上記登録テーブル13からの削除処理では、CPU3から登録解除要求のあったDP、例えば、第1通信デーモンプログラム14の登録解除要求があったら、登録テーブル13から第1通信デーモンプログラム14の参照先情報と設定情報を削除し、その削除について通信デーモンプログラム実行指示部11に通知する。こうして、ネットワーク制御部7は、登録テーブル13によって登録された通信デーモンプログラムを非搭載にすることができ、そのためにネットワーク制御部7のソースコードを大幅に変更するような手間のかかる作業が不要になる。したがって、プリンタ1に登録された通信のプロトコルを実現するための通信プログラムの削除が容易にできるようになる。また、通信デーモンプログラム実行指示部11は、登録テーブル13に登録された通信デーモンプログラムの変更を認識することができ、CPU3に対して起動可能な通信デーモンプログラムを通知することができる。次に、上記通信デーモンプログラム操作部12の通信デーモンプログラムの起動又は停止の処理を図1、図2、及び図4によって説明する。図4は、図1に示した通信デーモンプログラム操作部12の通信デーモンプログラムの起動又は停止の処理を示すシーケンス図である。ここでは、プリンタ1に第1通信デーモンプログラム14と第2通信デーモンプログラム15を搭載した場合を説明するが、第3通信デーモンプログラム16と第4通信デーモンプログラム17を搭載した場合についても後述の説明と同様の処理を実行する。ステップ図4中ではSと記載する11で、第1通信デーモンプログラム14は、CPU3からの起動指示によって最初に起動すると、自通信デーモンプログラムをネットワーク制御部7に登録する。また、ステップ12で、第2通信デーモンプログラム15は、CPU3からの起動指示によって最初に起動すると、自通信デーモンプログラムをネットワーク制御部7に登録する。これらの登録処理では、図3によって説明した処理を行う。次に、ステップ13で、ネットワーク制御部7は、登録された第1通信デーモンプログラム14を起動させる。その後のステップ14は、第1通信デーモンプログラム14がネットワーク制御部7に対して起動成功又は起動失敗の結果通知の処理である。さらに、ステップ15で、ネットワーク制御部7は、登録された第2通信デーモンプログラム15を起動させる。その後のステップ16は、第2通信デーモンプログラム15がネットワーク制御部7に対して起動成功又は起動失敗の結果通知の処理である。ステップ13と15の処理では、ネットワーク制御部7の通信デーモンプロクラム実行指示部11が、CPU3からのプリンタ1の起動時に送られる指示を受け取った場合、通信デーモンプログラム操作部12に第1通信デーモンプログラム14と第2通信デーモンプログラム15の実行を指示する。なお、この処理では、第1通信デーモンプログラム14と第2通信デーモンプログラム15の実行を指示する所定のタイミングとして、プリンタ1の起動時の場合を説明するが、それ以外のタイミングの場合でもよい。例えば、プリンタ1の再起動時の場合でも良い。通信デーモンプログラム操作部12は、第1通信デーモンプログラム14と第2通信デーモンプログラム15の実行の指示を受け取ると、登録テーブル13を参照し、登録テーブル13に登録された第1通信デーモンプログラム14と第2通信デーモンプログラム15の各参照先情報に基づいてそれぞれのHDD8におけるそれぞれの記憶場所を参照し、第1通信デーモンプログラム14と第2通信デーモンプログラム15の各設定情報この場合は起動に基づいて第1通信デーモンプログラム14と第2通信デーモンプログラム15を起動させる。また、第1通信デーモンプログラム14と第2通信デーモンプログラム15には、それぞれネットワーク制御部7に実行させる手順として、通信デーモンプログラム操作部12から処理開始を受けて第1通信デーモンプログラム14と第2通信デーモンプログラム15をそれぞれ実行させた場合、その実行の開始である起動処理又はその実行の終了である停止処理で発生した異常を検知する検知手順と、その検知手順によって異常を検知した場合、その異常に対して予め決められた処理として、例えば、通信デーモンプログラム操作部12所定の通知先に相当するに異常を通知する処理を実行する手順を含んでいる。したがって、ネットワーク制御部7は、第1通信デーモンプログラム14又は第2通信デーモンプログラム15を起動させたときに異常があった場合、又は終了させたときに異常があった場合にその異常を認識することができ、その異常に対して予め決められた処理であるエラー処理を実行することができる。上述のエラー処理としては、例えば、起動処理で異常が発生した場合は再度起動を指示する処理と、停止処理で異常が発生した場合は再度停止を指示する処理がある。また、上記異常に対して予め決められた処理として、異常の発生を検知した場合に、ネットワーク制御部7の通信デーモンプログラム操作部12は、図2のオペレーションパネル2へ異常発生の旨の通知を表示する処理を実行するようにしても良い。さらに、通信デーモンプログラム操作部12は、このプリンタ1とネットワークを介して外部に接続された管理装置に異常発生の旨の通知を送信するようにしても良い。なお、第3通信デーモンプログラム16と第4通信デーモンプログラム17についても、プリンタ1の起動時又はプリンタ1の再起動時に実行を指示することができる。また、第3通信デーモンプログラム16と第4通信デーモンプログラム17にも、上述と同様の検知手順と予め決められた処理を実行する手順を含んでおり、それぞれプリンタ1に搭載されて実行したときに異常を検知した場合に上述と同様の予め決められた処理を実行することができる。次に、ステップ17で、ネットワーク制御部7は、第1通信デーモンプログラム14を停止させる。その後のステップ18は、第1通信デーモンプログラム14がネットワーク制御部7に対して停止成功又は停止失敗の結果通知の処理である。さらに、ステップ19で、ネットワーク制御部7は、第2通信デーモンプログラム15を停止させる。その後のステップ20は、第2通信デーモンプログラム15がネットワーク制御部7に対して停止成功又は停止失敗の結果通知の処理である。ステップ17と19の処理では、ネットワーク制御部7の通信デーモンプログラム操作部12が、起動中の第1通信デーモンプログラム14と第2通信デーモンプログラム15について、登録テーブル13の各設定情報この場合は停止を参照し、第1通信デーモンプログラム14と第2通信デーモンプログラム15をそれぞれ停止させる。また、例えば、第2通信デーモンプログラム15を再起動させる場合、ステップ15の処理で、ネットワーク制御部7は、第2通信デーモンプログラム15を起動させる。その後のステップ22は、第2通信デーモンプログラム15がネットワーク制御部7に対して起動成功又は起動失敗の結果通知の処理である。上記ステップ21の処理では、ネットワーク制御部7の通信デーモンプログラム実行指示部11が、CPU3から第2通信デーモンプログラム15の再起動の指示を受け取った場合所定のタイミングの検知に該当する、通信デーモンプログラム操作部12に第2通信デーモンプログラム15の起動の実行を指示する。通信デーモンプログラム操作部12は、第2通信デーモンプログラム15の起動の実行の指示を受け取ると、登録テーブル13を参照し、登録テーブル13に登録された第2通信デーモンプログラム15の各参照先情報に基づいてHDD8における記憶場所を参照し、第2通信デーモンプログラム15を起動させる。こうして、第2通信デーモンプログラム15を再起動させることができる。なお、上述の実施形態では、バックグラウンドで動作させる通信プログラムである第1通信デーモンプログラム14~第4通信デーモンプログラム17を使用する場合を説明したが、ユーザが直接制御する通信プログラムについても上述と同様に実施することができる。例えば、ユーザが操作するSMTPSimpleMailTransferProtocolクライアントや、POPPostOfficeProtocol3クライアントについても実施できる。上記SMTPは、インターネット等のネットワーク上でメールを送信するためのプロトコルである。また、上記POP3は、インターネット等のネットワーク上でメールを保存しているサーバからメールを受信するためのプロトコルである。以上で実施形態の説明を終了するが、この発明において、各部の具体的な構成、処理の内容、データの形式等は、実施形態で説明したものに限るものではない。また、上述の実施形態では、この発明を通信機能を備えたプリンタに適用した例について説明した。しかし、この発明は、通信機能を備えたものならば、任意の画像形成装置、情報処理装置に適用可能である。さらに、この発明のプログラムは、コンピュータに各種デバイスを制御させ、上述した通信装置の各機能を実現させるためのプログラムとして構成することができる。このようなプログラムは、予め通信装置のメモリに記憶させておく他、記録媒体であるCD、あるいはフレキシブルディスク、SRAM、EEPROM、メモリカード等の不揮発性記録媒体に記録したり、ネットワークを介してダウンロードできるようにしたりして提供することもできる。そして、そのプログラムをインストールしてCPUに実行させるか、CPUにメモリあるいはダウンロードサーバからこのプログラムを取得させて実行させることにより、上述した実施形態のプリンタ1の各機能を実現させることができる。また、以上説明してきた実施形態の構成は、相互に矛盾しない限り任意に組み合わせて実施可能であることは勿論である。