структура NETWORK_OPEN_ECP_CONTEXT (ntifs.h)
Структура NETWORK_OPEN_ECP_CONTEXT используется для интерпретации контекстов дополнительных параметров создания сети (ECP) в файлах.
Синтаксис
typedef struct _NETWORK_OPEN_ECP_CONTEXT {
USHORT Size;
USHORT Reserved;
struct {
struct {
NETWORK_OPEN_LOCATION_QUALIFIER Location;
NETWORK_OPEN_INTEGRITY_QUALIFIER Integrity;
NETWORK_OPEN_IN_FLAGS Flags;
} in;
struct {
NETWORK_OPEN_LOCATION_QUALIFIER Location;
NETWORK_OPEN_INTEGRITY_QUALIFIER Integrity;
NETWORK_OPEN_OUT_FLAGS Flags;
} out;
} DUMMYSTRUCTNAME;
} NETWORK_OPEN_ECP_CONTEXT, *PNETWORK_OPEN_ECP_CONTEXT;
Члены
Size
Размер данной структуры (в байтах).
Reserved
Зарезервировано. Необходимо задать нулевое значение.
DUMMYSTRUCTNAME
Структура , содержащая ограничения для открытия файла (предварительного создания) и применения к файлу после его открытия (после создания).
DUMMYSTRUCTNAME.in
Структура, содержащая предварительно созданные ограничения для открытия файла.
DUMMYSTRUCTNAME.in.Location
NETWORK_OPEN_LOCATION_QUALIFIER типизированное значение, указывающее ограничение расположения для присоединения к файлу.
DUMMYSTRUCTNAME.in.Integrity
NETWORK_OPEN_INTEGRITY_QUALIFIER типизированное значение, указывающее ограничение целостности для присоединения к файлу.
DUMMYSTRUCTNAME.in.Flags
Поддерживается начиная с Windows 7. Значение типа , указывающее атрибуты для файла. Этот элемент является побитовой или любого из следующих флагов.
Значение | Значение |
---|---|
NETWORK_OPEN_ECP_IN_FLAG_DISABLE_HANDLE_COLLAPSING (0x1) | Указывает перенаправлению SMB, что входящий открытый запрос не должен быть скопирован и свернут на существующий открытый дескриптор для того же файла. |
NETWORK_OPEN_ECP_IN_FLAG_DISABLE_HANDLE_DURABILITY (0x2) | Приводит к отключению устойчивости перенаправления SMB2+ для этого открытого дескриптора. Дополнительные сведения об открытии файла для устойчивой операции см. в разделе Application Requests Creating a File Opened for Durable Operation. |
NETWORK_OPEN_ECP_IN_FLAG_DISABLE_OPLOCKS (0x4) | Указывает перенаправлению SMB, что он не предоставляет блокировки операций для входящего открытого запроса. Этот флаг доступен, начиная с Windows 8. |
NETWORK_OPEN_ECP_IN_FLAG_FORCE_BUFFERED_SYNCHRONOUS_IO_HACK (0x80000000) | Зарезервировано для внутреннего использования и не должно использоваться приложениями. Этот флаг заставляет перенаправитель использовать синхронные операции ввода-вывода, даже если дескриптор был открыт для асинхронного ввода-вывода. |
DUMMYSTRUCTNAME.out
Структура, содержащая ограничения после создания, применяемые к файлу после его открытия.
DUMMYSTRUCTNAME.out.Location
NETWORK_OPEN_LOCATION_QUALIFIER типизированное значение, указывающее ограничение расположения для присоединения к файлу.
DUMMYSTRUCTNAME.out.Integrity
NETWORK_OPEN_INTEGRITY_QUALIFIER типизированное значение, указывающее ограничение целостности для присоединения к файлу.
DUMMYSTRUCTNAME.out.Flags
Поддерживается начиная с Windows 7. Значение типа , указывающее атрибуты для файла. Этот элемент является побитовой или любого из следующих флагов.
Значение | Значение |
---|---|
NETWORK_OPEN_ECP_IN_FLAG_DISABLE_HANDLE_COLLAPSING (0x1) | Указывает перенаправлению SMB, что входящий открытый запрос не должен быть скопирован и свернут на существующий открытый дескриптор для того же файла. |
NETWORK_OPEN_ECP_IN_FLAG_DISABLE_HANDLE_DURABILITY (0x2) | Приводит к отключению устойчивости перенаправления SMB2+ для этого открытого дескриптора. Дополнительные сведения об открытии файла для устойчивой операции см. в разделе Application Requests Creating a File Opened for Durable Operation. |
NETWORK_OPEN_ECP_IN_FLAG_FORCE_BUFFERED_SYNCHRONOUS_IO_HACK (0x80000000) | Зарезервировано для внутреннего использования и не должно использоваться приложениями. Этот флаг заставляет перенаправитель использовать синхронные операции ввода-вывода, даже если дескриптор был открыт для асинхронного ввода-вывода. |
Комментарии
Сведения о том, как использовать ecp для связывания дополнительных сведений с файлом при создании файла, см. в разделе Использование дополнительных параметров создания с операцией IRP_MJ_CREATE.
Драйвер фильтра должен считать структуру NETWORK_OPEN_ECP_CONTEXT доступной только для чтения, используя ее только для получения сведений о контексте ECP сети в файле. Дополнительные сведения см. в разделе Определяемые системой ESP.
Если вызывающий объект должен убедиться, что файловая система подтвердила NETWORK_OPEN_ECP_CONTEXT структуру контекста, вызывающий объект должен вызвать подпрограмму FltIsEcpAcknowledged или FsRtlIsEcpAcknowledged в ECP после завершения операции.
Драйверы, которые работают в Windows 7 и более поздних версиях Windows и должны интерпретировать контексты ECP сети в файлах, находящихся в Windows Vista, должны использовать структуру NETWORK_OPEN_ECP_CONTEXT_V0 .
Драйверы под управлением Windows Vista и более поздних версий Windows используют структуру NETWORK_OPEN_ECP_CONTEXT для интерпретации контекстов ECP сети в файлах. Однако элементы DUMMYSTRUCTNAME.in.Flags и DUMMYSTRUCTNAME.out.Flags поддерживаются только начиная с Windows 7.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Эта структура доступна начиная с Windows Vista. |
Верхняя часть | ntifs.h (включая Ntifs.h) |