WdfIoResourceListUpdateDescriptor 関数 (wdfresource.h)
[KMDF にのみ適用]
WdfIoResourceListUpdateDescriptor メソッドは、リソース要件リストの 論理構成内のリソース記述子を更新します。
構文
void WdfIoResourceListUpdateDescriptor(
[in] WDFIORESLIST ResourceList,
[in] PIO_RESOURCE_DESCRIPTOR Descriptor,
[in] ULONG Index
);
パラメーター
[in] ResourceList
デバイスのハードウェア リソースの論理構成を表すフレームワーク リソース範囲リスト オブジェクトへのハンドル。
[in] Descriptor
ハードウェア リソースを記述する IO_RESOURCE_DESCRIPTOR 構造体へのポインター。
[in] Index
ResourceList が指定する論理構成に既に存在するリソース記述子のセットのインデックスとして使用 される、0 から始まる値。
戻り値
何一つ
備考
ドライバーが無効なオブジェクト ハンドルを提供すると、バグ チェックが発生します。
WdfIoResourceListUpdateDescriptor メソッドは、Index パラメーターが識別するリソース記述子を検索します。 次に、このメソッドは、Descriptor パラメーターが指定するリソース記述子を、Index が指定 記述子にコピーします。
リソース要件リストと論理構成の詳細については、「Framework-Based ドライバー のハードウェア リソースの」を参照してください。
例
次のコード例では、新しいリソース記述子を初期化し、WdfIoResourceListUpdateDescriptor を呼び出して、論理構成の 2 番目の記述子を新しい記述子に置き換えます。
IO_RESOURCE_DESCRIPTOR newDescriptor;
RtlZeroMemory(
&newDescriptor,
sizeof(newDescriptor)
);
newDescriptor.Option = 0;
newDescriptor.Type = CmResourceTypePort;
newDescriptor.ShareDisposition = CmResourceShareDeviceExclusive;
newDescriptor.Flags = CM_RESOURCE_PORT_IO|CM_RESOURCE_PORT_16_BIT_DECODE;
newDescriptor.u.Port.Length = 1;
newDescriptor.u.Port.Alignment = 0x01;
newDescriptor.u.Port.MinimumAddress.QuadPart = 0;
newDescriptor.u.Port.MaximumAddress.QuadPart = 0xFFFF;
WdfIoResourceListUpdateDescriptor(
Reslist,
&newDescriptor,
1
);
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | 万国 |
最小 KMDF バージョン | 1.0 |
ヘッダー | wdfresource.h (Wdf.h を含む) |
ライブラリ | Wdf01000.sys (フレームワーク ライブラリのバージョン管理を参照)。 |
IRQL | <=DISPATCH_LEVEL |
DDI コンプライアンス規則 を する | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |