IRP_MJ_SET_EA

보낸 경우

I/O 관리자는 파일의 확장 특성을 설정하기 위해 IRP_MJ_SET_EA 요청을 보냅니다.

작업: 파일 시스템 드라이버

파일 시스템에서 확장 특성을 지원하는 경우 파일 시스템 드라이버는 요청을 처리하고 IRP를 완료해야 합니다. 그렇지 않으면 파일 시스템 드라이버가 STATUS_EAS_NOT_SUPPORTED 반환해야 합니다.

작업: 파일 시스템 필터 드라이버

필터 드라이버는 이 IRP를 스택의 다음 하위 드라이버로 전달해야 합니다.

매개 변수

파일 시스템 또는 필터 드라이버는 지정된 IRP를 사용하여 IoGetCurrentIrpStackLocation 을 호출하여 IRP의 자체 스택 위치에 대한 포인터를 가져옵니다. IrpSp로 다음 목록에 나와 있습니다. (IRP는 Irp로 표시됩니다.) 드라이버는 설정된 확장 특성 요청을 처리하는 데 IRP 및 IRP 스택 위치의 다음 멤버에 설정된 정보를 사용할 수 있습니다.

DeviceObject
대상 디바이스 개체에 대한 포인터입니다.

Irp-AssociatedIrp.SystemBuffer>
설정할 확장 특성 정보를 포함하는 시스템 제공 입력 버퍼에 대한 포인터입니다. METHOD_BUFFERED I/O에 사용됩니다.

Irp-IoStatus>
요청된 작업에 대한 최종 완료 상태 및 정보를 받는 IO_STATUS_BLOCK 구조체에 대한 포인터입니다.

Irp-MdlAddress>
확장된 특성 정보를 수신하는 입력 버퍼를 설명하는 MDL(메모리 설명자 목록)의 주소입니다. METHOD_DIRECT I/O에 사용됩니다.

Irp-UserBuffer>
확장 특성 정보를 수신하는 호출자가 제공한 FILE_FULL_EA_INFORMATION 구조화된 입력 버퍼에 대한 포인터입니다. METHOD_NEITHER I/O에 사용됩니다.

IrpSp-FileObject>
DeviceObject와 연결된 파일 개체에 대한 포인터입니다.

IrpSp-FileObject> 매개 변수에는 FILE_OBJECT 구조인 RelatedFileObject 필드에 대한 포인터가 포함되어 있습니다. FILE_OBJECT 구조체의 RelatedFileObject 필드는 IRP_MJ_SET_EA 처리하는 동안 유효하지 않으므로 사용하면 안 됩니다.

IrpSp-MajorFunction>
IRP_MJ_SET_EA 지정합니다.

IrpSp-Parameters.SetEa.Length>
입력 버퍼의 길이(바이트)입니다.

참고 항목

FILE_FULL_EA_INFORMATION

IO_STACK_LOCATION

IO_STATUS_BLOCK

IoCheckEaBufferValidity

IoGetCurrentIrpStackLocation

IRP

IRP_MJ_QUERY_EA