次の方法で共有


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呼び出す方法の詳細については、「フレームワーク デバイス オブジェクトの作成」を参照してください。

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

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

必要条件

要件 価値
ターゲット プラットフォーム の 万国
最小 KMDF バージョン 1.0
ヘッダー wdfdevice.h (Wdf.h を含む)
ライブラリ Wdf01000.sys (フレームワーク ライブラリのバージョン管理を参照)。
IRQL PASSIVE_LEVEL
DDI コンプライアンス規則 を する ChildDeviceInitAPI(kmdf), ControlDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate() kmdf), InitFreeDeviceCallback(kmdf), InitFreeDeviceCreate(kmdf), InitFreeNull(km)df), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf)

関連項目

WdfDeviceRetrieveDeviceName