IO_STACK_LOCATION 構造体 (wdm.h)
IO_STACK_LOCATION構造体は、I/O スタックの場所を定義します。これは、各 IRP に関連付けられている I/O スタック内のエントリです。 IRP の各 I/O スタックの場所には、一部の共通メンバーと、要求の種類固有のメンバーがあります。
構文
typedef struct _IO_STACK_LOCATION {
UCHAR MajorFunction;
UCHAR MinorFunction;
UCHAR Flags;
UCHAR Control;
union {
struct {
PIO_SECURITY_CONTEXT SecurityContext;
ULONG Options;
USHORT POINTER_ALIGNMENT FileAttributes;
USHORT ShareAccess;
ULONG POINTER_ALIGNMENT EaLength;
} Create;
struct {
PIO_SECURITY_CONTEXT SecurityContext;
ULONG Options;
USHORT POINTER_ALIGNMENT Reserved;
USHORT ShareAccess;
PNAMED_PIPE_CREATE_PARAMETERS Parameters;
} CreatePipe;
struct {
PIO_SECURITY_CONTEXT SecurityContext;
ULONG Options;
USHORT POINTER_ALIGNMENT Reserved;
USHORT ShareAccess;
PMAILSLOT_CREATE_PARAMETERS Parameters;
} CreateMailslot;
struct {
ULONG Length;
ULONG POINTER_ALIGNMENT Key;
ULONG Flags;
LARGE_INTEGER ByteOffset;
} Read;
struct {
ULONG Length;
ULONG POINTER_ALIGNMENT Key;
ULONG Flags;
LARGE_INTEGER ByteOffset;
} Write;
struct {
ULONG Length;
PUNICODE_STRING FileName;
FILE_INFORMATION_CLASS FileInformationClass;
ULONG POINTER_ALIGNMENT FileIndex;
} QueryDirectory;
struct {
ULONG Length;
ULONG POINTER_ALIGNMENT CompletionFilter;
} NotifyDirectory;
struct {
ULONG Length;
ULONG POINTER_ALIGNMENT CompletionFilter;
DIRECTORY_NOTIFY_INFORMATION_CLASS POINTER_ALIGNMENT DirectoryNotifyInformationClass;
} NotifyDirectoryEx;
struct {
ULONG Length;
FILE_INFORMATION_CLASS POINTER_ALIGNMENT FileInformationClass;
} QueryFile;
struct {
ULONG Length;
FILE_INFORMATION_CLASS POINTER_ALIGNMENT FileInformationClass;
PFILE_OBJECT FileObject;
union {
struct {
BOOLEAN ReplaceIfExists;
BOOLEAN AdvanceOnly;
};
ULONG ClusterCount;
HANDLE DeleteHandle;
};
} SetFile;
struct {
ULONG Length;
PVOID EaList;
ULONG EaListLength;
ULONG POINTER_ALIGNMENT EaIndex;
} QueryEa;
struct {
ULONG Length;
} SetEa;
struct {
ULONG Length;
FS_INFORMATION_CLASS POINTER_ALIGNMENT FsInformationClass;
} QueryVolume;
struct {
ULONG Length;
FS_INFORMATION_CLASS POINTER_ALIGNMENT FsInformationClass;
} SetVolume;
struct {
ULONG OutputBufferLength;
ULONG POINTER_ALIGNMENT InputBufferLength;
ULONG POINTER_ALIGNMENT FsControlCode;
PVOID Type3InputBuffer;
} FileSystemControl;
struct {
PLARGE_INTEGER Length;
ULONG POINTER_ALIGNMENT Key;
LARGE_INTEGER ByteOffset;
} LockControl;
struct {
ULONG OutputBufferLength;
ULONG POINTER_ALIGNMENT InputBufferLength;
ULONG POINTER_ALIGNMENT IoControlCode;
PVOID Type3InputBuffer;
} DeviceIoControl;
struct {
SECURITY_INFORMATION SecurityInformation;
ULONG POINTER_ALIGNMENT Length;
} QuerySecurity;
struct {
SECURITY_INFORMATION SecurityInformation;
PSECURITY_DESCRIPTOR SecurityDescriptor;
} SetSecurity;
struct {
PVPB Vpb;
PDEVICE_OBJECT DeviceObject;
ULONG OutputBufferLength;
} MountVolume;
struct {
PVPB Vpb;
PDEVICE_OBJECT DeviceObject;
} VerifyVolume;
struct {
struct _SCSI_REQUEST_BLOCK *Srb;
} Scsi;
struct {
ULONG Length;
PSID StartSid;
PFILE_GET_QUOTA_INFORMATION SidList;
ULONG SidListLength;
} QueryQuota;
struct {
ULONG Length;
} SetQuota;
struct {
DEVICE_RELATION_TYPE Type;
} QueryDeviceRelations;
struct {
const GUID *InterfaceType;
USHORT Size;
USHORT Version;
PINTERFACE Interface;
PVOID InterfaceSpecificData;
} QueryInterface;
struct {
PDEVICE_CAPABILITIES Capabilities;
} DeviceCapabilities;
struct {
PIO_RESOURCE_REQUIREMENTS_LIST IoResourceRequirementList;
} FilterResourceRequirements;
struct {
ULONG WhichSpace;
PVOID Buffer;
ULONG Offset;
ULONG POINTER_ALIGNMENT Length;
} ReadWriteConfig;
struct {
BOOLEAN Lock;
} SetLock;
struct {
BUS_QUERY_ID_TYPE IdType;
} QueryId;
struct {
DEVICE_TEXT_TYPE DeviceTextType;
LCID POINTER_ALIGNMENT LocaleId;
} QueryDeviceText;
struct {
BOOLEAN InPath;
BOOLEAN Reserved[3];
DEVICE_USAGE_NOTIFICATION_TYPE POINTER_ALIGNMENT Type;
} UsageNotification;
struct {
SYSTEM_POWER_STATE PowerState;
} WaitWake;
struct {
PPOWER_SEQUENCE PowerSequence;
} PowerSequence;
#if ...
struct {
union {
ULONG SystemContext;
SYSTEM_POWER_STATE_CONTEXT SystemPowerStateContext;
};
POWER_STATE_TYPE POINTER_ALIGNMENT Type;
POWER_STATE POINTER_ALIGNMENT State;
POWER_ACTION POINTER_ALIGNMENT ShutdownType;
} Power;
#else
struct {
ULONG SystemContext;
POWER_STATE_TYPE POINTER_ALIGNMENT Type;
POWER_STATE POINTER_ALIGNMENT State;
POWER_ACTION POINTER_ALIGNMENT ShutdownType;
} Power;
#endif
struct {
PCM_RESOURCE_LIST AllocatedResources;
PCM_RESOURCE_LIST AllocatedResourcesTranslated;
} StartDevice;
struct {
ULONG_PTR ProviderId;
PVOID DataPath;
ULONG BufferSize;
PVOID Buffer;
} WMI;
struct {
PVOID Argument1;
PVOID Argument2;
PVOID Argument3;
PVOID Argument4;
} Others;
} Parameters;
PDEVICE_OBJECT DeviceObject;
PFILE_OBJECT FileObject;
PIO_COMPLETION_ROUTINE CompletionRoutine;
PVOID Context;
} IO_STACK_LOCATION, *PIO_STACK_LOCATION;
メンバー
MajorFunction
実行する I/O 操作の種類を示す IRP の主要な関数コード 。
MinorFunction
MajorFunction のサブ関数コード。 PnP マネージャー、電源マネージャー、ファイル システム ドライバー、SCSI クラス ドライバーは、一部の要求に対してこのメンバーを設定します。
Flags
要求の種類固有の値は、ファイル システム ドライバーによってほとんど排他的に使用されます。 リムーバブル メディア デバイス ドライバーは、デバイス オブジェクトの Flags が DO_VERIFY_VOLUME で設定されている場合でも読み取り操作を続行するかどうかを判断するために、読み取り要求に対してこのメンバーがSL_OVERRIDE_VERIFY_VOLUMEで設定されているかどうかをチェックします。 リムーバブル メディア デバイス ドライバー上に階層化された中間ドライバーは、すべての受信IRP_MJ_READ要求で、次の下位ドライバーの I/O スタックの場所にこのメンバー を コピーする必要があります。
IRP_MJ_CREATEのその他 SL_*
のフラグのドキュメントについては、「 IRP_MJ_CREATE (IFS)」を参照してください。
使用可能なフラグ値は次のとおりです。
フラグ | 値 | 説明 |
---|---|---|
SL_KEY_SPECIFIED | 0x01 |
冗長性が有効になっている場合に IO_STACK_LOCATION.Parameters.Read(OrWrite).Key 読み取る必要がある特定のセクターのコピーが が 含まれていることを示します。 現在、このフラグはIRP_MJ_READ操作でのみ使用されます。 |
SL_OVERRIDE_VERIFY_VOLUME | 0x02 |
このフラグは、デバイス オブジェクトの Flags が DO_VERIFY_VOLUME で設定されている場合でも、読み取り操作を続行するかどうかを判断するために使用されます。 |
SL_WRITE_THROUGH | 0x04 |
このフラグは、ディスクが永続的なストレージ メディアに書き込みを強制的に行うために、ディスクが書き込みキャッシュをバイパスするように、適切なフラグを設定するようにストレージ ドライバーに通知します。 このフラグはデバイス固有です。すべてのディスク ドライブでディスク キャッシュのバイパスがサポートされているわけではありません。 |
SL_FT_SEQUENTIAL_WRITE | 0x08 |
システムで使用するために予約されています。 |
SL_FORCE_DIRECT_WRITE | 0x10 |
このフラグを使用すると、カーネル モード ドライバーは、ファイル システムとストレージ ドライバー スタックで直接書き込みをブロックするため、通常は書き込むことができないボリューム領域に書き込むことができます。 直接書き込みブロックは、セキュリティの向上に役立ちます。 このフラグは、ファイル システム レイヤーとストレージ スタック レイヤーの両方でチェックされます。 直接書き込みブロックの詳細については、「 ボリュームとディスクへの直接書き込み操作のブロック」を参照してください。 |
SL_REALTIME_STREAM | 0x20 |
このフラグは、IO が CD-ROM クラス ドライバーへのリアルタイム ストリーミング要求用であることを示します。 これにより、リアルタイム ストリーミングの保証された速度で読み取り/書き込み操作を実行するようにドライバーが示唆されます。 このフラグは、光ディスク・メディアでのみ有効です。 |
SL_PERSISTENT_MEMORY_FIXED_MAPPING | 0x20 |
書き込み要求のバイトの永続メモリ マッピングは、この書き込み要求の処理中に変更できません。 このフラグは、永続メモリ デバイスとIRP_MJ_WRITEでのみ有効です。 |
永続メモリ デバイスの場合、永続メモリ デバイスで再マッピング (特定の LBA の物理アドレスを変更) する理由の 1 つは、効率的なセクター レベルの原子性を提供することです。 フラグが設定されていない場合、特にドライバーがセクター原子性を提供する場合は、再マップが許可されます。 ファイル システム (またはリクエスター) は、永続メモリ デバイス ドライバーがセクターの原子性を提供することを好みます。 フラグが設定されている場合、永続メモリ ドライバーは、LBA に対応する物理アドレスを再マップすることはできません。 それがセクターの原子性を提供できないことを意味する場合は、そうである。 ただし、再マッピングがない限り、ドライバーはセクターの原子性を提供することは歓迎以上です。
Control
ドライバーは、このメンバーをチェックして、SL_PENDING_RETURNED で設定されているかどうかと、CompletionRoutine が呼び出される条件を判断できます。 ドライバーには、このメンバーへの読み取り専用アクセス権があります。 ドライバーは 、これらの条件を指定するために IoSetCompletionRoutine または IoSetCompletionRoutineEx を呼び出します。
Parameters
MajorFunction および MinorFunction に含まれるメジャーおよびマイナー IRP 関数コード値に依存する共用体。 次の表は、 Parameters 共用体の個々のメンバーを使用する IRP を示しています。
メンバー名 | このメンバーを使用する IRP |
---|---|
作成 | IRP_MJ_CREATE |
読み取り | IRP_MJ_READ |
書き込み | IRP_MJ_WRITE |
QueryFile | IRP_MJ_QUERY_INFORMATION |
SetFile | IRP_MJ_SET_INFORMATION |
QueryVolume | IRP_MJ_QUERY_VOLUME_INFORMATION |
DeviceIoControl | IRP_MJ_DEVICE_CONTROL と IRP_MJ_INTERNAL_DEVICE_CONTROL |
MountVolume | IRP_MN_MOUNT_VOLUME |
VerifyVolume | IRP_MN_VERIFY_VOLUME |
Scsi | IRP_MJ_INTERNAL_DEVICE_CONTROL (SCSI) |
QueryDeviceRelations | IRP_MN_QUERY_DEVICE_RELATIONS |
QueryInterface | IRP_MN_QUERY_INTERFACE |
DeviceCapabilities | IRP_MN_QUERY_CAPABILITIES |
FilterResourceRequirements | IRP_MN_FILTER_RESOURCE_REQUIREMENTS |
ReadWriteConfig | IRP_MN_READ_CONFIG と IRP_MN_WRITE_CONFIG |
SetLock | IRP_MN_SET_LOCK |
QueryId | IRP_MN_QUERY_ID |
QueryDeviceText | IRP_MN_QUERY_DEVICE_TEXT |
UsageNotification | IRP_MN_DEVICE_USAGE_NOTIFICATION |
WaitWake | IRP_MN_WAIT_WAKE |
PowerSequence | IRP_MN_POWER_SEQUENCE |
電源 | IRP_MN_SET_POWER と IRP_MN_QUERY_POWER |
StartDevice | IRP_MN_START_DEVICE |
WMI | WMI マイナー IRP |
Others | ドライバー固有の IRP |
詳細については、「 IRP の主要な関数コード」を参照してください。
Parameters.Create
NtCreateFile のシステム サービス パラメーター。
Parameters.Create.SecurityContext
Parameters.Create.Options
Parameters.Create.FileAttributes
Parameters.Create.ShareAccess
Parameters.Create.EaLength
Parameters.CreatePipe
NtCreateNamedPipeFile のシステム サービス パラメーター。
Parameters.CreatePipe.SecurityContext
Parameters.CreatePipe.Options
Parameters.CreatePipe.Reserved
Parameters.CreatePipe.ShareAccess
Parameters.CreatePipe.Parameters
Parameters.CreateMailslot
NtCreateMailslotFile のシステム サービス パラメーター。
Parameters.CreateMailslot.SecurityContext
Parameters.CreateMailslot.Options
Parameters.CreateMailslot.Reserved
Parameters.CreateMailslot.ShareAccess
Parameters.CreateMailslot.Parameters
Parameters.Read
NtReadFile のシステム サービス パラメーター。
Parameters.Read.Length
Parameters.Read.Key
Parameters.Read.Flags
Parameters.Read.ByteOffset
Parameters.Write
NtWriteFile のシステム サービス パラメーター。
Parameters.Write.Length
Parameters.Write.Key
Parameters.Write.Flags
Parameters.Write.ByteOffset
Parameters.QueryDirectory
NtQueryDirectoryFile のシステム サービス パラメーター。
Parameters.QueryDirectory.Length
Parameters.QueryDirectory.FileName
Parameters.QueryDirectory.FileInformationClass
Parameters.QueryDirectory.FileIndex
Parameters.NotifyDirectory
NtNotifyChangeDirectoryFile のシステム サービス パラメーター。
Parameters.NotifyDirectory.Length
Parameters.NotifyDirectory.CompletionFilter
Parameters.NotifyDirectoryEx
NtNotifyChangeDirectoryFileEx のシステム サービス パラメーター。
Parameters.NotifyDirectoryEx.Length
Parameters.NotifyDirectoryEx.CompletionFilter
Parameters.NotifyDirectoryEx.DirectoryNotifyInformationClass
Parameters.QueryFile
NtQueryInformationFile のシステム サービス パラメーター。
Parameters.QueryFile.Length
Parameters.QueryFile.FileInformationClass
Parameters.SetFile
NtSetInformationFile のシステム サービス パラメーター。
Parameters.SetFile.Length
Parameters.SetFile.FileInformationClass
Parameters.SetFile.FileObject
Parameters.SetFile.ReplaceIfExists
Parameters.SetFile.AdvanceOnly
Parameters.SetFile.ClusterCount
Parameters.SetFile.DeleteHandle
Parameters.QueryEa
NtQueryEaFile のシステム サービス パラメーター。
Parameters.QueryEa.Length
Parameters.QueryEa.EaList
Parameters.QueryEa.EaListLength
Parameters.QueryEa.EaIndex
Parameters.SetEa
NtSetEaFile のシステム サービス パラメーター。
Parameters.SetEa.Length
Parameters.QueryVolume
NtQueryVolumeInformationFile のシステム サービス パラメーター。
Parameters.QueryVolume.Length
Parameters.QueryVolume.FsInformationClass
Parameters.SetVolume
NtSetVolumeInformationFile のシステム サービス パラメーター。
Parameters.SetVolume.Length
Parameters.SetVolume.FsInformationClass
Parameters.FileSystemControl
NtFsControlFile のシステム サービス パラメーター。
Parameters.FileSystemControl.OutputBufferLength
Parameters.FileSystemControl.InputBufferLength
Parameters.FileSystemControl.FsControlCode
Parameters.FileSystemControl.Type3InputBuffer
Parameters.LockControl
LockFile/NtUnlockFile のシステム サービス パラメーター。
Parameters.LockControl.Length
Parameters.LockControl.Key
Parameters.LockControl.ByteOffset
Parameters.DeviceIoControl
NtDeviceIoControlFile のシステム サービス パラメーター。
Parameters.DeviceIoControl.OutputBufferLength
Parameters.DeviceIoControl.InputBufferLength
Parameters.DeviceIoControl.IoControlCode
Parameters.DeviceIoControl.Type3InputBuffer
Parameters.QuerySecurity
NtQuerySecurityObject のシステム サービス パラメーター。
Parameters.QuerySecurity.SecurityInformation
Parameters.QuerySecurity.Length
Parameters.SetSecurity
NtSetSecurityObject のシステム サービス パラメーター。
Parameters.SetSecurity.SecurityInformation
Parameters.SetSecurity.SecurityDescriptor
Parameters.MountVolume
MountVolume のシステム サービス パラメーター。
Parameters.MountVolume.Vpb
Parameters.MountVolume.DeviceObject
Parameters.MountVolume.OutputBufferLength
Parameters.VerifyVolume
VerifyVolume のシステム サービス パラメーター。
Parameters.VerifyVolume.Vpb
Parameters.VerifyVolume.DeviceObject
Parameters.Scsi
内部デバイス制御を使用した Scsi のパラメーター。
Parameters.Scsi.Srb
Parameters.QueryQuota
NtQueryQuotaInformationFile のシステム サービス パラメーター。
Parameters.QueryQuota.Length
Parameters.QueryQuota.StartSid
Parameters.QueryQuota.SidList
Parameters.QueryQuota.SidListLength
Parameters.SetQuota
NtSetQuotaInformationFile のシステム サービス パラメーター。
Parameters.SetQuota.Length
Parameters.QueryDeviceRelations
IRP_MN_QUERY_DEVICE_RELATIONSのパラメーター。
Parameters.QueryDeviceRelations.Type
Parameters.QueryInterface
IRP_MN_QUERY_INTERFACEのパラメーター。
Parameters.QueryInterface.InterfaceType
Parameters.QueryInterface.Size
Parameters.QueryInterface.Version
Parameters.QueryInterface.Interface
Parameters.QueryInterface.InterfaceSpecificData
Parameters.DeviceCapabilities
IRP_MN_QUERY_CAPABILITIESのパラメーター。
Parameters.DeviceCapabilities.Capabilities
Parameters.FilterResourceRequirements
IRP_MN_FILTER_RESOURCE_REQUIREMENTSのパラメーター。
Parameters.FilterResourceRequirements.IoResourceRequirementList
Parameters.ReadWriteConfig
IRP_MN_READ_CONFIGとIRP_MN_WRITE_CONFIGのパラメーター。
Parameters.ReadWriteConfig.WhichSpace
Parameters.ReadWriteConfig.Buffer
Parameters.ReadWriteConfig.Offset
Parameters.ReadWriteConfig.Length
Parameters.SetLock
IRP_MN_SET_LOCKのパラメーター。
Parameters.SetLock.Lock
Parameters.QueryId
IRP_MN_QUERY_IDのパラメーター。
Parameters.QueryId.IdType
Parameters.QueryDeviceText
IRP_MN_QUERY_DEVICE_TEXTのパラメーター。
Parameters.QueryDeviceText.DeviceTextType
Parameters.QueryDeviceText.LocaleId
Parameters.UsageNotification
IRP_MN_DEVICE_USAGE_NOTIFICATIONのパラメーター。
Parameters.UsageNotification.InPath
Parameters.UsageNotification.Reserved[3]
Parameters.UsageNotification.Type
Parameters.WaitWake
IRP_MN_WAIT_WAKEのパラメーター。
Parameters.WaitWake.PowerState
Parameters.PowerSequence
IRP_MN_POWER_SEQUENCEのパラメーター。
Parameters.PowerSequence.PowerSequence
Parameters.Power
IRP_MN_SET_POWERとIRP_MN_QUERY_POWERのパラメーター。
Parameters.Power.SystemContext
Parameters.Power.SystemPowerStateContext
Parameters.Power.Type
Parameters.Power.State
Parameters.Power.ShutdownType
Parameters.StartDevice
StartDevice のパラメーター。
Parameters.StartDevice.AllocatedResources
Parameters.StartDevice.AllocatedResourcesTranslated
Parameters.WMI
WMI IRP のパラメーター。
Parameters.WMI.ProviderId
Parameters.WMI.DataPath
Parameters.WMI.BufferSize
Parameters.WMI.Buffer
Parameters.Others
他のドライバー固有の操作のパラメーター。
Parameters.Others.Argument1
Parameters.Others.Argument2
Parameters.Others.Argument3
Parameters.Others.Argument4
DeviceObject
このドライバーが IRP を処理する対象の物理、論理、または仮想デバイスを表すドライバーによって作成された DEVICE_OBJECT 構造体へのポインター。
FileObject
DeviceObject ポインターに関連付けられているファイル オブジェクト (存在する場合) を表すFILE_OBJECT構造体へのポインター。
CompletionRoutine
この構造体の Control フィールドのフラグに応じて呼び出される完了ルーチン。
Context
CompletionRoutine に渡されるコンテキスト パラメーターのアドレスを格納するために使用されるドライバー定義のコンテキスト。
注釈
IRP ごとに、ドライバー スタック内のドライバーごとに 1 つのIO_STACK_LOCATION構造があります。 各 IRP の I/O スタックの場所のセットは、 IRP 構造体の後に IRP に追加されます。
上位レベルのドライバーはすべて、各 IRP の次の下位ドライバーの I/O スタックの場所を設定する必要があります。 ドライバーは、各 IRP の独自のスタックの場所へのポインターを取得する IoGetCurrentIrpStackLocation を呼び出す必要があります。 上位レベルのドライバーは 、IoGetNextIrpStackLocation を呼び出して、次の下位ドライバーのスタック位置へのポインターを取得できます。
上位レベルのドライバーは、下位レベルのドライバーに IRP を渡すために IoCallDriver を呼び出す前に、スタックの場所の内容を設定する必要があります。 ドライバーが入力 IRP を次の下位レベルのドライバーに渡す場合、ディスパッチ ルーチンは IoSkipCurrentIrpStackLocation または IoCopyCurrentIrpStackLocationToNext を呼び出して、次の下位ドライバーの I/O スタックの場所を設定する必要があります。
IoCallDriver に対する上位レベルドライバーの呼び出しは、下位ドライバーの I/O スタックの場所で、次の下位レベルのドライバーのターゲット デバイス オブジェクトに DeviceObject メンバーを設定します。 I/O マネージャーは、IRP の完了時に IoCompletion ルーチンが呼び出されたときに、上位レベルのドライバーの IoCompletion ルーチンに独自のデバイス オブジェクトへのポインターを渡します。
上位レベルのドライバーが IRP を割り当てて独自の要求を行う場合、そのドライバーがそれ自体のスタックの場所を割り当てず、新しく割り当てられた IRP の独自のスタック位置に DeviceObject ポインターを設定しない場合、その IoCompletion ルーチンは NULLDeviceObject ポインターを渡します。
場合によっては、大容量ストレージ デバイス ドライバーに階層化された上位レベルのドライバーが、基になるデバイス ドライバーの大きな転送要求を分割する役割を担います。 特に、SCSI クラス ドライバーは Parameters.Read.Length と Parameters.Write.Length をチェックし、要求された転送のサイズが基になる HBA の転送機能を超えているかどうかを判断し、存在する場合は、元の IRP を満たすために元の要求の長さを一連の部分転送に分割する必要があります。
要件
要件 | 値 |
---|---|
Header | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
こちらもご覧ください
フィードバック
https://aka.ms/ContentUserFeedback。
近日公開予定: 2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub イシューを段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、以下を参照してください:フィードバックの送信と表示