WdfDeviceInitAssignName 関数 (wdfdevice.h)

[KMDF にのみ適用]

WdfDeviceInitAssignName メソッドは、デバイスのデバイスオブジェクトにデバイス名を割り当てます。

構文

NTSTATUS WdfDeviceInitAssignName(
  [in]           PWDFDEVICE_INIT  DeviceInit,
  [in, optional] PCUNICODE_STRING DeviceName
);

パラメーター

[in] DeviceInit

WDFDEVICE_INIT構造体へのポインター。

[in, optional] DeviceName

デバイス名を表す UNICODE_STRING 構造体へのポインター。

戻り値

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

リターン コード 説明
STATUS_INSUFFICIENT_RESOURCES
システムは、デバイス名を格納する領域を割り当てることができません。

注釈

ドライバーが WdfDeviceInitAssignName を呼び出す場合は、 WdfDeviceCreate を呼び出す前に呼び出す必要があります。

ドライバーが WdfDeviceInitAssignName を呼び出して名前を割り当てる場合、ドライバーは後で NULLDeviceName パラメーターを使用して WdfDeviceInitAssignName を呼び出して、デバイス名をクリアできます。 デバイス名が NULL で、デバイス オブジェクトに名前が必要な場合 (PDO または コントロール デバイスを表しているため)、オペレーティング システムによって名前が作成されます。

デバイス オブジェクトの名前付けの詳細については、「 Framework-Based ドライバーでのデバイス アクセスの制御」を参照してください。

WdfDeviceCreate の呼び出しの詳細については、「Framework デバイス オブジェクトの作成」を参照してください。

次のコード例では、 NT デバイス名をデバイス に割り当てます。

DECLARE_CONST_UNICODE_STRING(MyDeviceName, L"\\Device\\Ramdisk") ;
status = WdfDeviceInitAssignName(
                                 DeviceInit,
                                 &MyDeviceName
                                 );
if (!NT_SUCCESS(status)) {
    return status;
}

要件

要件
対象プラットフォーム ユニバーサル
最小 KMDF バージョン 1.0
Header wdfdevice.h (Wdf.h を含む)
Library Wdf01000.sys (「Framework ライブラリのバージョン管理」を参照)。
IRQL PASSIVE_LEVEL
DDI コンプライアンス規則 ChildDeviceInitAPI(kmdf), ControlDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate(kmdf)InitFreeDeviceCallback(kmdf)InitFreeDeviceCreate(kmdf)InitFreeNull(kmdf)KmdfIrql(kmdf)、KmdfIrql2(kmdf)、KmdfIrqlExplicit(kmdf)、PdoDeviceInitAPI(kmdf)PdoInitFreeDeviceCallback(kmdf)PdoInitFreeDeviceCreate(kmdf)

こちらもご覧ください

WdfDeviceRetrieveDeviceName