(57)【要約】【課題】アプリケーションにアドミニストレータ特権がない場合のドライブへの書き込み方法を提供する。【解決手段】  本発明は、サードパーティのドライバを使用することなく、かつ、ＩＤＥバスと共に動作するカスタマイズされたドライバを使用することなく、アドミニストレータ特権を有しないコンピュータアプリケーションのユーザのドライブへの書き込みを可能にする。本発明は、当該アプリケーションと通信するドライバプログラミングインターフェースと、当該ドライバインターフェースと通信するサービスプロキシと、当該サービスプロキシと通信する、アドミニストレータ特権を有するサービスと、当該アドミニストレータ特権を有するサービスと通信するドライバと、当該ドライバと通信するドライブとを含む。【選択図】図４
2005141750.tif 000002
【特許請求の範囲】
【請求項１】
アドミニストレータ特権のないコンピュータアプリケーション（１０２Ｂ）と、
前記コンピュータアプリケーション（１０２Ｂ）と通信するドライバプログラミングインターフェース（１１６）と、
前記ドライバプログラミングインターフェース（１１６）と通信するサービスプロキシ（１１８）と、
前記サービスプロキシ（１１８）と通信するアドミニストレータ特権を有するサービス（１２０）と、
前記アドミニストレータ特権を有するサービス（１２０）と通信するドライバ（１０４）であって、小型コンピュータ用周辺機器インターフェース通過インターフェース（「ＳＰＴＩ」）（１０６）と通信するか、または、ＳＰＴＩモードで構成される、ドライバ（１０４）と、
前記ＳＰＴＩ（１０６）または前記ＳＰＴＩ構成のドライバ（１０４）と通信するドライバ（１０８）と
を備えるシステム。
【請求項２】
前記アドミニストレータ特権のないコンピュータアプリケーション（１０２Ｂ）は、前記ドライバプログラミングインターフェース（１１６）に高級アプリケーション言語を送信するように構成され、
前記ドライバプログラミングインターフェース（１１６）は、前記サービスプロキシ（１１８）に対して、高級言語（「ＨＬＬ」）およびアプリケーションプログラミングインターフェース（「ＡＰＩ」）の関数呼び出しまたはこれらのいずれかを使用するように構成される
請求項１に記載のシステム。
【請求項３】
前記サービスプロキシ（１１８）は、プロセス間通信（「ＩＰＣ」）によって前記アドミニストレータ特権を有するサービス（１２０）と通信するように構成され、
前記アドミニストレータ特権を有するサービス（１２０）は、小型コンピュータ用周辺機器インターフェース通過（「ＳＰＴ」）ダイレクト言語および入出力制御（「ＩＯＣＴＬ」）言語またはこれらのいずれかを使用して前記ドライバ（１０４）と通信するように構成される
請求項２に記載のシステム。
【請求項４】
前記ドライバ（１０４）がＳＰＴＩ（１０６）と通信する場合に、前記ドライバ（１０４）は、小型コンピュータ用周辺機器インターフェース（「ＳＣＳＩ」）コマンドを使用して前記ＳＰＴＩ（１０６）と通信するように構成され、
前記ドライバ（１０４）がＳＰＴＩモードで構成される場合に、前記ドライバ（１０４）は、ＳＣＳＩコマンドを使用して前記ドライブ（１０８）と通信するように構成される
請求項３に記載のシステム。
【請求項５】
前記ドライブ（１０８）は、ＣＤドライブである
請求項１に記載のシステム。
【請求項６】
アドミニストレータ特権を有しないコンピュータアプリケーションとドライバプログラミングインターフェースとの間で書き込みコマンドを送信するステップと、
前記書き込みコマンドに少なくとも部分的に基づいて、前記ドライバプログラミングインターフェースとサービスプロキシとの間で第２のコマンドを送信するステップと、
前記第２のコマンドに少なくとも部分的に基づいて、前記サービスプロキシとアドミニストレータ特権を有するサービスとの間で第３のコマンドを送信するステップと、
前記第３のコマンドに少なくとも部分的に基づいて、前記アドミニストレータ特権を有するサービスとドライバとの間で第４のコマンドを送信するステップと、
前記第４のコマンドに少なくとも部分的に基づいて、前記ドライバと小型コンピュータ用周辺機器インターフェース通過インターフェース（「ＳＰＴＩ」）との間で第５のコマンドを送信するステップと、
前記第５のコマンドに少なくとも部分的に基づいて、前記ＳＰＴＩとドライブとの間で第６のコマンドを送信するステップと
を含む方法。
【請求項７】
アドミニストレータ特権を有しないコンピュータアプリケーションとドライバプログラミングインターフェースとの間で書き込みコマンドを送信する前記ステップは、
前記アドミニストレータ特権を有しないアプリケーションから前記ドライバプログラミングインターフェースに高級アプリケーション言語を送信すること
を含み、
前記書き込みコマンドに少なくとも部分的に基づいて、前記ドライバプログラミングインターフェースとサービスプロキシとの間で第２のコマンドを送信する前記ステップは、
前記ドライバプログラミングインターフェースと前記サービスプロキシとの間で、高級言語（「ＨＬＬ」）および／またはアプリケーションプログラミングインターフェース（「ＡＰＩ」）の関数呼び出しを使用すること
を含む
請求項６に記載の方法。
【請求項８】
前記第２のコマンドに少なくとも部分的に基づいて、前記サービスプロキシとアドミニストレータ特権を有するサービスとの間で第３のコマンドを送信する前記ステップは、
プロセス間通信（「ＩＰＣ」）によって、前記サービスプロキシから前記アドミニストレータ特権を有するサービスに前記第３のコマンドを送信すること
を含み、
前記第３のコマンドに少なくとも部分的に基づいて、前記アドミニストレータ特権を有するサービスとドライバとの間で第４のコマンドを送信する前記ステップは、
前記アドミニストレータ特権を有するサービスから前記ドライバへ入出力制御（「ＩＯＣＴＬ」）言語を送信すること
を含む、
請求項７に記載の方法。
【請求項９】
前記第４のコマンドに少なくとも部分的に基づいて、前記ドライバとＳＰＴＩとの間で第５のコマンドを送信する前記ステップは、
前記ドライバから前記ＳＰＩＴに小型コンピュータ用周辺機器インターフェース（「ＳＣＳＩ」）信号を送信すること
を含み、
前記第５のコマンドに少なくとも部分的に基づいて、前記ＳＰＴＩとドライブとの間で第６のコマンドを送信する前記ステップは、
前記ＳＰＴＩから前記ドライブにＳＣＳＩ信号を送信すること
を含む
請求項８に記載の方法。
【請求項１０】
前記ドライブは、ＣＤドライブである
請求項６に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションにアドミニストレータ特権がない場合のドライブへの書き込みシステムおよび方法に関する。
【背景技術】
【０００２】
ＣＤドライブのディスクへ書き込み（「焼き付け」とも呼ばれる）を行うには、画像アプリケーションがそのドライブにデータを送信することを可能にするインターフェースが必要とされる。
Ｗｉｎｄｏｗｓ（登録商標）オペレーティングシステム（「ＯＳ」）を有するパーソナルコンピュータ（「ＰＣ」）では、ＣＤドライブへのアクセスは、通常、ｃｄｒｏｍ．ｓｙｓのクラスドライバを通じて行われる。
このクラスドライバとインターフェースするには、非常に低水準のプログラミングが必要とされ、インターフェースすることは、画像アプリケーションが焼き付けデータを送信するための簡単な方法ではない。
【０００３】
図１Ａおよび図１Ｂに示すように、標準的なコンピュータシステム１００は、ＣＤ−ＲＯＭドライブ１０８を含む。
このＣＤ−ＲＯＭドライブ１０８は、焼き付けをサポートするように変更され、焼き付け用にのみ使用される特定の小型コンピュータ用周辺機器インターフェース／アタッチメントパケットインターフェース（「ＳＣＳＩ／ＡＴＡＰＩ」）コマンドを認識するようにプログラミングされる。
このシステム１００では、Ｗｉｎｄｏｗｓアプリケーション１０２（「１０２Ａ」および「１０２Ｂ」として示す）が、入出力制御（「ＩＯＣＴＬ」）言語を使用してＯＳクラスドライバ１０４とインターフェースする。
しかしながら、これらのコマンドは非標準であるので、エラーチェックプロトコルを迂回することが必要となる。
したがって、従来の手法は、ＯＳドライバ１０４とインターフェースされたＳＣＳＩ通過インターフェース（「ＳＰＴＩ（SCSI-pass-through-interface）」）１０６を使用することであった。
【０００４】
図１Ａに示すように、Ｗｉｎｄｏｗｓアプリケーション１０２が、ＳＰＴＩ１０６を使用する際に、アドミニストレータ特権１０２Ａを有するアプリケーションである（すなわち、ユーザがアドミニストレータ特権を有し、このステータスがシステム１００によって認識される）場合に、クラスドライバ１０４は、ポートドライバ１３０、インテリジェントドライブエレクトロニクス（「統合ドライブエレクトロニクス（integrated drive electronics）」または「ＩＤＥ」としても知られている）バスドライバ１４０、およびＩＤＥバス１１０を介して未処理の焼き付けコマンドデータをＣＤドライブ１０８に渡す。
ＳＰＴＩは、そのデータに干渉もしないし、データのチェックもしない。
ドライバ１０４は、ＳＰＴＩに信号を送信する前に、アドミニストレータ特権ステータスを確認する。
アドミニストレータ特権を有するアプリケーション１０２Ａの場合、ＳＰＴＩは、ＣＤドライブ１０８にＳＣＳＩ／ＡＴＡＰＩ焼き付けコマンドを送信する。
対比として、図１Ｂに示すように、アプリケーションがアドミニストレータ特権１０２Ｂを有しない（すなわち、ユーザがアドミニストレータ特権を有さず、このステータスがシステム１００によって認識されている）場合、このステータス情報もドライバ１０４に渡される。
その結果、ドライバ１０４は、ＳＰＴＩに焼き付け信号を送信せず、ＳＰＴＩは、信号がＣＤドライブ１０８に到達することを妨げる。
【０００５】
その結果、アプリケーションは、ＳＰＴＩを使用するために、アドミニストレータ特権を有しなければならない（すなわち、ユーザはアドミニストレータ特権を有しなければならない）。
しかしながら、ほとんどのＰＣユーザ、特にネットワーク上のＰＣユーザは、アドミニストレータ特権を有しないので、ＳＰＴＩは、通常、利用可能ではなく、それによって、焼き付けコマンドがＣＤドライブ１０８に到達することが妨げられる。
【０００６】
このアドミニストレータのアクセス問題に対して２つの有力な解決法がある。
第１に、図２に示すように、ＩＤＥバス１００を使用するが、標準ＳＣＳＩバスもドライバも使用しない別のシステム１５０が開発されている。
このシステム１５０は、第２のカスタマイズされたドライバ１１２を使用して、ＩＤＥバス１１０のデータおよび制御線を制御し、焼き付けデータをＣＤドライブ１０８に送信する。
【０００７】
あいにく、特殊化されたコマンドを使用して、アドミニストレータ特権がないことに関連した焼き付けアクセス問題を克服する結果として、このシステム１５０は、既にＯＳの一部であるクラスドライバ１０４等の標準ドライバをサポートしない。
その結果、第２のドライバ１１２は、ポートドライバ１３０およびＩＤＥバスドライバ１４０を介して、アドミニストレータ特権を有しないアプリケーション１０２ＢとＩＤＥバス１１０との間のインターフェースとして動作する必要がある。
第２のドライバ１１２は、ＯＳドライバ１０４と同じ焼き付けコマンドを受信することもできるし、カスタムドライバとインターフェースされている結果として特殊化された焼き付けコマンドを受信することもできる。
しかしながら、第２のドライバ１１２は、アプリケーション１０２Ｂのドライバコマンドを、ＣＤドライブ１０８にバス１１０を通じて送信される非ＳＣＳＩコマンドに変換するようにカスタマイズされる。
【０００８】
図３に示す第２の解決法はシステム１７５を含むものである。
このシステム１７５は、図１Ａに示す標準ＯＳのように、ＳＣＳＩコマンドを使用して、ＣＤドライブ１０８を制御する。
しかしながら、このシステム１７５では、ＳＣＳＩコマンドは、ＯＳの一部ではないサードパーティのＣＤドライバ１１４を介してＣＤドライブ１０８に到達する。
このようなドライバの一例は、アドバンストＳＣＳＩプログラミングインターフェース（「ＡＳＰＩ」）である。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
あいにく、サードパーティのドライバには、ライセンス料が必要であり、現時点のオペレーティングシステムでは、技術的サポートが限られている。
このシステムでは、アドミニストレータ特権を有しないアプリケーション１０２Ｂは、システムドライバ１０４、ＳＰＴＩ１０６、およびサードパーティのドライバ１１４とインターフェースすることが理解されるべきである。
ＯＳドライバ１０４およびサードパーティのドライバ１１４は、同じ焼き付けコマンドを受信し、上述したシステム（このシステムでは、アドミニストレータステータス信号がシステムドライバ１０４に伝達されていた）と異なり、このシステム１７５では、ステータス信号はＳＰＴＩ１０６に伝達される。
しかしながら、上述したシステム１５０と同様に、ＳＰＴＩ１０６は迂回され、このシステム１７５では、この迂回はサードパーティのドライバ１１４を介して行われる。
【課題を解決するための手段】
【００１０】
本発明の一実施の形態は、サードパーティのドライバを使用することなく、かつ、ＩＤＥバスと共に動作するカスタマイズされたドライバを使用することなく、アドミニストレータ特権を有しないコンピュータアプリケーションのユーザのドライブへの書き込みを可能にするシステムおよび方法である。
このシステムは、当該アプリケーションと通信するドライバプログラミングインターフェースと、当該ドライバインターフェースと通信するサービスプロキシと、当該サービスプロキシと通信する、アドミニストレータ特権を有するサービスと、当該アドミニストレータ特権を有するサービスと通信するドライバと、当該ドライバと通信するドライブとを含む。
【００１１】
本発明のこれらの特徴、態様、および利点、ならびに、他の特徴、態様、および利点は、以下の説明、添付した特許請求の範囲、および図面に示す付随した例示の実施の形態からより明らかになる。
【発明を実施するための最良の形態】
【００１２】
本発明の一実施の形態は、アドミニストレータ特権のないコンピュータアプリケーションからドライブに書き込みコマンドを送信するシステムを備える。
このシステムは、
（ａ）アドミニストレータ特権のないコンピュータアプリケーションと；
（ｂ）コンピュータアプリケーションと通信するドライバプログラミングインターフェースと；
（ｃ）ドライバプログラミングインターフェースと通信するサービスプロキシと；
（ｄ）サービスプロキシと通信するアドミニストレータ特権を有するサービスと；
（ｅ）アドミニストレータ特権を有するサービスと通信するドライバであって、ＳＰＴＩと通信するか、または、ＳＰＴＩモードに構成される、ドライバと；
（ｆ）ＳＰＴＩまたはＳＰＴＩ構成のドライバと通信するドライブとを含む。
【００１３】
本発明の別の実施の形態は、アドミニストレータ特権を有しないコンピュータアプリケーションからドライブに書き込みコマンドを送信する方法を含む。
この方法は、
（ａ）アドミニストレータ特権を有しないコンピュータアプリケーションとドライバプログラミングインターフェースとの間で書き込みコマンドを送信すること；
（ｂ）書き込みコマンドに少なくとも部分的に基づいて、ドライバプログラミングインターフェースとサービスプロキシとの間で第２のコマンドを送信すること；
（ｃ）第２のコマンドに少なくとも部分的に基づいて、サービスプロキシとアドミニストレータ特権を有するサービスとの間で第３のコマンドを送信すること；
（ｄ）第３のコマンドに少なくとも部分的に基づいて、アドミニストレータ特権を有するサービスとドライバとの間で第４のコマンドを送信すること；
（ｅ）第４のコマンドに少なくとも部分的に基づいて、ドライバとＳＰＴＩとの間で第５のコマンドを送信すること、および；
（ｆ）第５のコマンドに少なくとも部分的に基づいて、ＳＰＴＩとドライブとの間で第６のコマンドを送信することを含む。
【００１４】
本発明の別の実施の形態は、アドミニストレータ特権を有しないコンピュータアプリケーションからドライブに書き込みコマンドを送信する方法を含む。
この方法は、
（ａ）アドミニストレータ特権を有しないコンピュータアプリケーションとドライバプログラミングインターフェースとの間で書き込みコマンドを送信するステップと；
（ｂ）書き込みコマンドに少なくとも部分的に基づいて、ドライバプログラミングインターフェースとサービスプロキシとの間で第２のコマンドを送信するステップと；
（ｃ）第２のコマンドに少なくとも部分的に基づいて、サービスプロキシとアドミニストレータ特権を有するサービスとの間で第３のコマンドを送信するステップと；
（ｄ）第３のコマンドに少なくとも部分的に基づいて、アドミニストレータ特権を有するサービスとＳＰＴＩモードに構成されたドライバとの間で第４のコマンドを送信するステップと；
（ｅ）第４のコマンドに少なくとも部分的に基づいて、ドライバとドライブとの間で第５のコマンドを送信するステップとを含む。
【００１５】
本発明の別の実施の形態は、アドミニストレータ特権を有しないコンピュータアプリケーションからドライブに書き込みコマンドを送信するプログラム製品を備える。
このプログラム製品は、実行されると、以下の方法をマシンに実行させるマシン可読プログラムコードを含む。
以下の方法とは、すなわち、
（ａ）アドミニストレータ特権を有しないコンピュータアプリケーションとドライバプログラミングインターフェースとの間で書き込みコマンドを送信すること；
（ｂ）書き込みコマンドに少なくとも部分的に基づいて、ドライバプログラミングインターフェースとサービスプロキシとの間で第２のコマンドを送信すること；
（ｃ）第２のコマンドに少なくとも部分的に基づいて、サービスプロキシとアドミニストレータ特権を有するサービスとの間で第３のコマンドを送信すること；
（ｄ）第３のコマンドに少なくとも部分的に基づいて、アドミニストレータ特権を有するサービスとドライバとの間で第４のコマンドを送信すること；
（ｅ）第４のコマンドに少なくとも部分的に基づいて、ドライバとＳＰＴＩとの間で第５のコマンドを送信すること、および；
（ｆ）第５のコマンドに少なくとも部分的に基づいて、ＳＰＴＩとドライブとの間で第６のコマンドを送信することである。
【００１６】
次に、本発明のさまざまな実施の形態を詳細に参照する。
これらのさまざまな実施の形態は、図面に示されている。
同じまたは類似の部分を参照するのに、図面全体を通じて同じ参照符号を使用するようにしている。
【００１７】
図４は、システム２００の概略図を示している。
このシステム２００は、アドミニストレータ特権を有しないアプリケーション１０２Ｂが、ＩＤＥバス１１０と共に動作する第２のカスタマイズされたドライバ１１２を使用することなく、かつ、サードパーティのドライバ１１４を使用することなく、ドライブに書き込みを行うことを可能にするものである。
図示した実施の形態は、ＣＤドライブインターフェースを描写している。
このＣＤドライブインターフェースは、アドミニストレータ特権を有しないコンピュータアプリケーション１０２Ｂと、ドライバプログラミングインターフェース１１６と、サービスプロキシ１１８と、アドミニストレータ特権を有するサービス１２０と、ＯＳドライバ１０４と、ＳＰＴＩ１０６と、ＣＤドライブ１０８とを備える。
【００１８】
アドミニストレータ特権を有しないコンピュータアプリケーション１０２Ｂは、例えば、Ｗｉｎｄｏｗｓアプリケーションとすることができる。
このアプリケーション１０２Ｂは、高級言語によってドライバプログラミングインターフェース１１６にコマンド（例えば、書き込みコマンド）を送信する。
【００１９】
ドライバプログラミングインターフェース１１６は、サービスプロキシ１１８を使用してＣＤドライブ１０８と通信する最上位レベルのインターフェースである。
このドライバインターフェース１１６は、書き込み／焼き付け特有のコマンドを提供する。
このコマンドによって、画像化構成部品は、ドライブ１０８および媒体に関する情報を読み出すことが可能になり、かつ、設定に加えて、焼き付けられる実際の画像データもドライブ１０８に送信することが可能になる。
ドライバプログラミングインターフェース１１６は、アプリケーション１０２Ｂからの高級言語コマンドを解釈し、高級言語（「ＨＬＬ」）および／またはアプリケーションプログラミングインターフェース（「ＡＰＩ」）言語によってサービスプロキシ１１８と通信する。
【００２０】
サービスプロキシ１１８は、アドミニストレータ特権を有するサービス１２０と通信するのに、アドミニストレータ特権を有しないアプリケーション１０２Ｂのプロセス間通信（「ＩＰＣ」）メカニズムを使用する必要性を取り除く。
プロキシ１１８は、アドミニストレータ特権がないことを認識すると、アドミニストレータ特権を有するサービス１２０に一般的なコマンドを供給する。
【００２１】
サービスプロキシ１１８によって送信されたコマンドは、入力コマンド、出力コマンド、またはステータス（例えば、ドライブは動作中か）コマンドをドライブ１０８に送信するように、アドミニストレータ特権を有するサービス１２０に指示する。
入力コマンドは、ドライバ１０４が、ドライブ１０８から媒体パラメータ等の或る情報を読み出したい場合のコマンドである。
出力コマンドは、ピクセルデータのトラックをドライブ１０８に送信する等のコマンドである。
また、サービスプロキシ１１８は、ローカルシステム上で焼き付け可能なすべてのドライブを検出する標準メカニズム、それらドライブの説明およびドライブ名を取得する標準メカニズム、特定のドライブを焼き付けるために開閉するコマンドを送信する標準メカニズム、ドライブ１０８に対する排他的ロックをドライバ１０４に与えるコマンドを送信する標準メカニズム等を提供することもできる。
【００２２】
これらのコマンドを送信するために、サービスプロキシ１１８は、アドミニストレータ特権を有するサービス１２０とインターフェースする。
アドミニストレータ特権を有するサービス１２０は、ドライバ１０４にアドミニストレータアクセスを提供し、クラスドライバ１０４のＳＰＴＩモードを使用するようにプログラミングされる。
したがって、アドミニストレータ特権を有するサービス１２０は、ドライバ１０４と通信して、ＳＣＳＩ通過（「ＳＰＴ（small-computer-system-pass-through）」）ダイレクトコマンドおよび／またはＩＯＣＴＬコマンドを使用する。
すなわち、アドミニストレータ特権を有するサービス１２０は、対応する低水準のコマンドをＳＰＴＩ１０６を介してドライブ１０８に送信するようにプログラミングされる。
【００２３】
図示するように、ドライバ１０４およびＳＰＴＩ１０６は、別個のものとすることができる。
この場合、ドライバ１０４はＳＰＴＩと通信し、ＳＰＴＩはＳＣＳＩコマンドによってドライブ１０８と通信する。
対比として、ドライブ１０４は、ＳＰＴＩモードに構成されたドライバ１２２に結合することができ、この場合、ドライバ１２２は、ＳＣＳＩコマンドによってドライブ１０８と直接通信することができる。
【００２４】
同様に、図示するように、サービスプロキシ１１８およびアドミニストレータ特権を有するサービス１２０は、別個のものとすることができる。
しかしながら、サービスプロキシ１１８およびアドミニストレータ特権を有するサービス１２０は、１つの統合デバイス１２４に結合できることが理解されるべきである。
【００２５】
コンピュータアプリケーションがアドミニストレータ特権を有するアプリケーション１０２Ａである場合、システム２００は、図１Ａに示すシステム１００と酷似して動作することも理解されるべきである。
さらに、ドライブ１０８のファームウェアは、書き込み／焼き付けコマンドとして受信するＳＣＳＩコマンドを認識するようにプログラミングされているという前提が、このシステム２００では暗黙的にある。
【００２６】
データをディスクに転送する上述したシステムおよび方法は、多数の利点を提供する。
例えば、このシステムによって、画像化システムは、ＳＣＳＩドライバの低水準の複雑さを扱う必要なく、光ディスクドライブと通信することが可能になる。
別の例として、システムは、ユーザが、ＳＰＴＩ１０６を通じてドライブにアクセスするアドミニストレータ特権を有することを必要としない。
さらに、標準的なＯＳコンポーネントを使用し、それによって、新たなドライバの必要性をなくすことによって、システムは、
（ａ）オペレーティングシステムの一部ではないサードパーティのＣＤ−ＲＯＭドライバを使用することに関連したライセンスコストをなくし、
（ｂ）Microsoft Hardware Quality研究所による証明書を必要としない。
【００２７】
上記内容は、本発明の実施の形態を説明しているが、本発明は、そのように限定されるものではない。
さまざまな変更および変形を、本発明の範囲および精神から逸脱することなく、本発明の開示した実施の形態に対して行い得ることが当業者には明らかである。
したがって、アドミニストレータ特権を有しないアプリケーションからドライブに書き込みコマンドを送信するこれらの他のシステムおよび方法は、特許を請求する発明の範囲内に完全に含まれる。
したがって、本明細書で説明した装置および方法は、例示にすぎず、添付した特許請求の範囲によって示される本発明の範囲を限定するものではない。
【図面の簡単な説明】
【００２８】
【図１Ａ】アドミニストレータ特権を有するアプリケーションが実行中であり、書き込みコマンドをドライブに送信できる標準的なオペレーティングシステムの概略図である。
【図１Ｂ】アドミニストレータ特権を有しないアプリケーションが実行中であり、書き込みコマンドをドライブに送信できない標準的なオペレーティングシステムの概略図である。
【図２】アドミニストレータ特権を有しないアプリケーションのドライブへの書き込みを可能にする第１の従来技術のシステムの概略図である。
【図３】アドミニストレータ特権を有しないアプリケーションのドライブへの書き込みを可能にする第２の従来技術のシステムの概略図である。
【図４】ＩＤＥバスと共に動作する第２のカスタマイズされたドライバを使用することなく、かつ、サードパーティのドライバを使用することなく、アドミニストレータ特権を有しないアプリケーションのドライブへの書き込みを可能にするシステムの一実施の形態の概略図である。
【符号の説明】
【００２９】
１０２Ａ：特権を有するコンピュータアプリケーション
１０２Ｂ：特権を有しないコンピュータアプリケーション
１０４：システムドライバ
１０８：ドライブ
１１０：ＩＤＥバス
１１６：ドライバプログラミングインターフェース
１１８：サービスプロキシ
１２０：アドミニストレータ特権を有するサービス
１３０：ポートドライバ
１４０：ＩＤＥバスドライバ
【図１Ａ】
2005141750.tif 000003
【図１Ｂ】
2005141750.tif 000004
【図２】
2005141750.tif 000005
【図３】
2005141750.tif 000006
【図４】
2005141750.tif 000007