署名されたドライバ用のカスタム電源設定
最終更新日: 2008年1月21日
Windows Vista およびそれ以降のバージョンでは、デバイス メーカーとドライバ メーカーは、Windows Vista の電源プランと統合された、デバイス固有のカスタム電源設定を定義できます。ドライバの INF の AddPowerSetting ディレクティブは、電源設定値を、フレンドリ名、説明、およびグローバル一意識別子 (GUID) と関連付け、各電源特性の既定の設定を、システム定義の電源プラン内で指定します。システムでは、コントロール パネルの [電源オプション] アプリケーションの [詳細設定] タブに、カスタム電源設定が表示されます。
カスタム電源設定値を変更するには
電源設定は、デバイスがどのようにインストールされ機能するかに対し、影響を及ぼします。したがって、メーカーが提供する、電源設定を変更するすべてのコンポーネントは、署名される必要があります。さまざまなユーザーに対し、異なる設定または既定値をメーカーが定義する唯一の方法は、署名されたドライバ パッケージを別個に提供することです。
たとえば、映画館など薄暗い環境でのみ使用するシステムにディスプレイを接続しているユーザーがいたとします。この場合、パフォーマンス電源設定での AC 電源の望ましい既定値は、100% の明るさではなく 75% の明るさである可能性があります。ユーザーに対し、ディスプレイ メーカーがこれらの既定値を設定できる唯一の方法は、この既定値を定義するユーザー固有の署名されたインストール パッケージを提供することです。
もし、ユーザーが、インストール時の設定値と異なる電源設定定義または既定値を必要とする場合、それらを変更するのは、ユーザーまたはシステム管理者の責任です。PowerCfg.exe コマンド ライン ツールにより、ユーザーは、電源設定および個々の電源設定値を変更できます。
ローカライズされた文字列
INF は、各電源設定のフレンドリ名と説明の既定の文字列を提供できます。また、外部 DLL で、ローカライズされた文字列を提供できます。特定のドライバ パッケージでは、上記のいずれかの技法を使用する必要があります。つまり、特定のユーザーのために既定の文字列を INF に含めると同時に、他のユーザーのために DLL を参照することはできません。たとえば、INF に英語の文字列が含まれている場合、英語を話さない地域のロケールでのみインストールされる DLL を提供することはできません。DLL は、INF の SourceDisksFiles セクションで示される必要があり、パッケージ内の他のファイルと共にハッシュされます。
文字列を変更したり、より多くの言語サポートを追加したりするために後から DLL を変更した場合、変更された DLL のハッシュ値を含む、新しいカタログ ファイルを作成する必要があります。変更点が DLL に限定され、ドライバのバイナリが変化していない場合、Driver Update Acceptable (DUA) のしくみを使用して、Driver Test Manager (DTM) の再テストなしで、カタログの新しい署名を受け取ることができます。詳細については、Windows Quality Online Web サイトを参照してください。
行うべきこと
| • | INF で AddPowerSetting ディレクティブを使用し、デバイス電源設定をシステム電源プランの設定と統合します。 |
| • | 外部 DLL で、設定名および説明用のローカライズされたフレンドリ文字列を提供します。 |
| • | 必要に応じて、Winqual Web サイトの DUA のしくみを使用し、ドライバ パッケージを新しい署名で更新します。 |
詳細情報 :
Windows Vista における電源ポリシーの構成および展開
Microsoft TechNet Powercfg Command-Line Options (Windows Vista TechCenter 内)
Windows Driver Kit
INF AddPowerSetting Directive
Managing Device Performance States