WdfDeviceAssignInterfaceProperty 関数 (wdfdevice.h)

重要

UMDF にのみ適用されます

WdfDeviceAssignInterfaceProperty メソッドは、デバイス インターフェイス プロパティの現在の値を変更します。

注意

デバイス インターフェイス プロパティを取得または変更するには、KMDF ドライバーで IoGetDeviceInterfacePropertyData または IoSetDeviceInterfacePropertyData を直接呼び出す必要があります。

構文

NTSTATUS WdfDeviceAssignInterfaceProperty(
  [in]           WDFDEVICE                           Device,
  [in]           PWDF_DEVICE_INTERFACE_PROPERTY_DATA PropertyData,
  [in]           DEVPROPTYPE                         Type,
  [in]           ULONG                               BufferLength,
  [in, optional] PVOID                               PropertyBuffer
);

パラメーター

[in] Device

フレームワーク デバイス オブジェクトへのハンドル。

[in] PropertyData

構造体へのポインター WDF_DEVICE_INTERFACE_PROPERTY_DATA

[in] Type

PropertyBuffer で提供されるデータの型を指定する DEVPROPTYPE 型の値。

[in] BufferLength

PropertyBuffer が指すバッファーの長さをバイト単位で指定します。

[in, optional] PropertyBuffer

デバイス インターフェイス プロパティ データへのポインター。 指定したプロパティを削除するには、このパラメーターを NULL に設定します。

戻り値

WdfDeviceAssignInterfaceProperty メソッドでエラーが発生しない場合は、STATUS_SUCCESSを返します。 その他の戻り値は次のとおりです。

リターン コード 説明
STATUS_INVALID_PARAMETER パラメーターの 1 つが正しくありません。

メソッドは、他の NTSTATUS 値を返す場合があります。

注釈

関連するメソッドの詳細については、「 統合デバイス プロパティ モデルへのアクセス」を参照してください。

次のコード例では、 WDF_DEVICE_INTERFACE_PROPERTY_DATA 構造体を初期化し、 WdfDeviceAssignInterfaceProperty を呼び出します。

DEFINE_DEVPROPKEY(DEVPKEY_ToasterCrispLevelDword, 0x5d0ba64a, 0x2396, 0x4bc9, 0xbf, 0x49, 0x52, 0x1d, 0xa6, 0x2b, 0x1b, 0xed, 3);  // DEVPROP_TYPE_UINT32

ULONG crispLevel = 0;
WDF_DEVICE_INTERFACE_PROPERTY_DATA propertyData;

WDF_DEVICE_INTERFACE_PROPERTY_DATA_INIT(
                          &propertyData, 
                          &GUID_DEVINTERFACE_TOASTER_DRIVER
                          &DEVPKEY_ToasterCrispLevelDword
                          );

status = WdfDeviceAssignInterfaceProperty(device, 
                                          &propertData,
                                          DEVPROP_TYPE_UINT32,
                                          sizeof(crispLevel),
                                          &crispLevel);
if (!NT_SUCCESS(status)) {
    return status;
}

要件

要件
サポートされている最小のクライアント Windows 8.1
対象プラットフォーム ユニバーサル
最小 UMDF バージョン 2.0
Header wdfdevice.h (Wdf.h を含む)
Library WUDFx02000.lib
[DLL] WUDFx02000.dll
IRQL PASSIVE_LEVEL

こちらもご覧ください

WDF_DEVICE_INTERFACE_PROPERTY_DATA

WDF_DEVICE_INTERFACE_PROPERTY_DATA_INIT

WdfDeviceAllocAndQueryInterfaceProperty

WdfDeviceQueryInterfaceProperty