WDF_FILEOBJECT_CLASS 열거형(wdfdevice.h)
[KMDF 및 UMDF에 적용]
WDF_FILEOBJECT_CLASS 열거형은 애플리케이션 또는 다른 드라이버가 만들거나 열려고 하는 파일을 나타내기 위해 드라이버에 프레임워크 파일 개체가 필요한지 여부를 식별하는 값을 정의합니다. 또한 이러한 값은 프레임워크가 개체의 핸들을 저장할 수 있는 위치를 지정합니다.
통사론
typedef enum _WDF_FILEOBJECT_CLASS {
WdfFileObjectInvalid = 0,
WdfFileObjectNotRequired = 1,
WdfFileObjectWdfCanUseFsContext = 2,
WdfFileObjectWdfCanUseFsContext2 = 3,
WdfFileObjectWdfCannotUseFsContexts = 4,
WdfFileObjectCanBeOptional = 0x80000000
} WDF_FILEOBJECT_CLASS, *PWDF_FILEOBJECT_CLASS;
상수
WdfFileObjectInvalid 값: 0 내부용으로 예약되어 있습니다. |
WdfFileObjectNotRequired 값: 1 드라이버에 프레임워크 파일 개체가 필요하지 않습니다. |
WdfFileObjectWdfCanUseFsContext 값: 2 드라이버에는 프레임워크 파일 개체가 필요합니다. 프레임워크는 파일의 WDM(Windows 드라이버 모델) FILE_OBJECT 구조체의 FsContext 멤버에 개체의 핸들을 저장할 수 있습니다. |
WdfFileObjectWdfCanUseFsContext2 값: 3 드라이버에는 프레임워크 파일 개체가 필요합니다. 프레임워크는 파일의 WDM FILE_OBJECT 구조의 FsContext2 멤버에 개체의 핸들을 저장할 수 있습니다. |
WdfFileObjectWdfCannotUseFsContexts 값: 4 드라이버에는 프레임워크 파일 개체가 필요합니다. 하나 이상의 드라이버가 이러한 멤버를 사용하므로 프레임워크는 파일의 WDM FILE_OBJECT 구조의 FsContext 또는 FsContext2 멤버에 개체의 핸들을 저장할 수 없습니다. 따라서 프레임워크는 핸들을 내부적으로 저장해야 합니다. |
WdfFileObjectCanBeOptional 값: 0x80000000 드라이버에는 일반적으로 프레임워크 파일 개체가 필요하지만 프레임워크 파일 개체가 없거나 다른 특수한 상황도 처리할 수 있습니다. 이러한 상황에 대한 자세한 내용은 다음 주의 섹션을 참조하세요. WdfFileObjectCanBeOptional 드라이버가 WdfFileObjectWdfCanUseFsContext사용할 수 있는 비트 플래그입니다. WdfFileObjectWdfCanUseFsContext2또는 WdfFileObjectWdfCannotUseFsContexts 열거자 값입니다. 대부분의 프레임워크 기반 드라이버는 이 비트 플래그를 사용하지 않습니다. WdfFileObjectCanBeOptional 값은 버전 1.9 이상 버전의 KMDF에서 사용할 수 있습니다. |
발언
WDF_FILEOBJECT_CLASS 열거형은 WDF_FILEOBJECT_CONFIG 구조체에 사용됩니다.
드라이버가 WdfRequestGetFileObject 호출하여 I/O 요청에 대한 프레임워크 파일 개체를 가져오고 드라이버가 수신하는 일부 WDM I/O 요청 패킷(IRP)에 WDM 파일 개체가 포함되지 않는다는 것을 알고 있는 경우 드라이버는 WdfFileObjectCanBeOptional 비트 플래그를 설정할 수 있습니다.
드라이버가 WdfFileObjectWdfCanUseFsContext 설정하는 경우 WdfFileObjectWdfCanUseFsContext2 또는 WdfFileObjectWdfCannotUseFsContexts는 값을WdfFileObjectCanBeOptional 비트 플래그를 설정하지 않습니다. 프레임워크의 검증 도구 드라이버가 WdfRequestGetFileObject 메서드를 호출할 때 다음과 같은 경우에 대한 오류를 보고합니다.
- IRP에는 WDM 파일 개체가 포함되지 않습니다.
- IRP에는 WDM 파일 개체가 포함되어 있지만 파일 개체는 파일 만들기 IRP에 포함된 개체와 다릅니다.
요구 사항
요구 | 값 |
---|---|
최소 KMDF 버전 | 1.0 |
최소 UMDF 버전 | 2.0 |
헤더 | wdfdevice.h(Wdf.h 포함) |