IoSetDevicePropertyData 関数 (wdm.h)
IoSetDevicePropertyData ルーチンは、デバイス プロパティの現在の設定を変更します。
構文
NTSTATUS IoSetDevicePropertyData(
[in] PDEVICE_OBJECT Pdo,
[in] const DEVPROPKEY *PropertyKey,
[in] LCID Lcid,
[in] ULONG Flags,
[in] DEVPROPTYPE Type,
[in] ULONG Size,
[in, optional] PVOID Data
);
パラメーター
[in] Pdo
クエリ対象のデバイスの物理デバイス オブジェクト (PDO) へのポインター。
[in] PropertyKey
デバイス プロパティ キーを指定する DEVPROPKEY 構造体へのポインター。
[in] Lcid
ロケール識別子。 このパラメーターは、言語固有の LCID 値または LOCALE_NEUTRALに設定します。
LOCALE_NEUTRAL LCID は、プロパティが言語に依存しないことを指定します (つまり、どの言語にも固有ではありません)。
このパラメーターを LOCALE_SYSTEM_DEFAULT または LOCALE_USER_DEFAULTに設定しないでください。
言語固有の LCID 値の詳細については、「LCID 構造体 を参照してください。
[in] Flags
このルーチンによって設定されたプロパティ値がコンピューターの再起動後も保持される場合は、このパラメーターを PLUGPLAY_PROPERTY_PERSISTENT に設定します。 それ以外の場合は、Flags を 0 に設定します。
Windows 8 および Windows Server 2012 以降のオペレーティング システムでは、フラグ は、常に PLUGPLAY_PROPERTY_PERSISTENT が渡されるかのように扱われます。
[in] Type
Data バッファーで提供されるデータの型を指定する DEVPROPTYPE 値です。
[in] Size
Data が指すバッファーのサイズ (バイト単位)。
[in, optional] Data
デバイス プロパティ データへのポインター。 指定したプロパティを削除するには、このパラメーター NULL に設定します。 データ が NULL以外の場合、ルーチンはプロパティ値の内部コピーを格納します。 Data が指すバッファーは、呼び出しが戻った後も有効なままである必要はありません。
戻り値
IoSetDevicePropertyData は、呼び出しが成功した場合はSTATUS_SUCCESS、失敗した場合は適切な NTSTATUS コードを返します。
備考
このルーチンで使用できるプロパティの種類を確認するには、DEVPROP_TYPE_*
の DEVPROP_TYPE_BYTE ページと隣接するページを参照してください。
カーネル モード ドライバーは、IoSetDevicePropertyData ルーチンを使用して、統合デバイス プロパティ モデルの一部として定義されているデバイス プロパティを変更します。 デバイスのプロパティの詳細については、「デバイスのプロパティの」を参照してください。
特定のロケールのプロパティを削除するには、言語固有の LCID 値 Lcid に渡し、Dataで NULL を します。
すべてのロケールのプロパティを削除するには、Lcid で LOCALE_NEUTRAL を渡し、Dataで NULL を します。
特定のロケールのプロパティを変更するには、言語固有の LCID 値を Lcid に渡し、Dataで非NULL を渡します。
すべてのロケールのプロパティを変更するには、Lcid で LOCALE_NEUTRAL を渡し、Dataで非NULL を渡します。
Windows 8 および Windows Server 2012 以降では、Lcid で LOCALE_NEUTRAL を渡すことは、他のロケールと同様に扱われます。
ドライバーは、IoGetDevicePropertyData ルーチンを使用して、デバイス プロパティの現在の値を取得できます。
IoSetDeviceProperty の呼び出し元は、システム スレッドのコンテキストで IRQL <= APC_LEVELで実行されている必要があります。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows Vista 以降で使用できます。 |
ターゲット プラットフォーム の | 万国 |
ヘッダー | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
ライブラリ | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |
DDI コンプライアンス規則 を する | HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm) |
関連項目
DEVPROPKEY を する
DEVPROPTYPE を する
IoGetDevicePropertyData の