estrutura FILE_REMOTE_PROTOCOL_INFORMATION (ntifs.h)

A estrutura FILE_REMOTE_PROTOCOL_INFORMATION contém informações de protocolo remoto de arquivo. Essa estrutura é retornada de FltQueryInformationFile quando FileRemoteProtocolInformation é passado como o parâmetro FileInformationClass .

Sintaxe

typedef struct _FILE_REMOTE_PROTOCOL_INFORMATION {
  USHORT StructureVersion;
  USHORT StructureSize;
  ULONG  Protocol;
  USHORT ProtocolMajorVersion;
  USHORT ProtocolMinorVersion;
  USHORT ProtocolRevision;
  USHORT Reserved;
  ULONG  Flags;
  struct {
    ULONG Reserved[8];
  } GenericReserved;
  struct {
    ULONG Reserved[16];
  } ProtocolSpecificReserved;
  union {
    struct {
      struct {
        ULONG Capabilities;
      } Server;
      struct {
        ULONG Capabilities;
        ULONG ShareFlags;
        ULONG CachingFlags;
        UCHAR ShareType;
        UCHAR Reserved0[3];
        ULONG Reserved1;
      } Share;
    } Smb2;
    ULONG Reserved[16];
  } ProtocolSpecific;
} FILE_REMOTE_PROTOCOL_INFORMATION, *PFILE_REMOTE_PROTOCOL_INFORMATION;

Membros

StructureVersion

Versão dessa estrutura. Defina esse membro da seguinte maneira.

Valor Significado
1 A comunicação é entre computadores que executam o Windows 7
2 A comunicação é entre computadores que executam Windows 8
3 A comunicação é entre computadores que executam Windows 8.1
4 A comunicação é entre computadores que executam Windows 10 ou posterior

StructureSize

Tamanho dessa estrutura, em bytes. Esse membro deve ser definido como sizeof(FILE_REMOTE_PROTOCOL_INFORMATION).

Protocol

Um dos tipos de rede de protocolo remoto WNNC_NET_XXXdefinidos em ntifs.h.

ProtocolMajorVersion

Número principal do protocolo remoto.

ProtocolMinorVersion

Número menor do protocolo remoto.

ProtocolRevision

Revisão do protocolo remoto.

Reserved

Deve ser definido como zero. Não use esse membro.

Flags

Informações de protocolo remoto. Esse membro pode ser definido como zero ou mais dos sinalizadores a seguir.

Valor Significado
REMOTE_PROTOCOL_FLAG_LOOPBACK O protocolo remoto está usando um loopback
REMOTE_PROTOCOL_FLAG_OFFLINE O protocolo remoto está usando um cache offline
REMOTE_PROTOCOL_INFO_FLAG_PERSISTENT_HANDLE O protocolo remoto está usando um identificador persistente. Esse sinalizador só terá suporte se StructureVersion for 2 ou superior.
REMOTE_PROTOCOL_INFO_FLAG_PRIVACY O protocolo remoto está usando privacidade. Esse sinalizador só terá suporte se StructureVersion for 2 ou superior.
REMOTE_PROTOCOL_INFO_FLAG_INTEGRITY O protocolo remoto está usando a integridade para que os dados sejam assinados. Esse sinalizador só terá suporte se StructureVersion for 2 ou superior.
REMOTE_PROTOCOL_INFO_FLAG_MUTUAL_AUTH O protocolo remoto está usando a autenticação mútua usando Kerberos. Esse sinalizador só terá suporte se StructureVersion for 2 ou superior.

GenericReserved

Estrutura de informações genéricas de protocolo.

GenericReserved.Reserved[8]

Deve ser definido como zero. Não use esse membro.

ProtocolSpecificReserved

ProtocolSpecificReserved.Reserved[16]

ProtocolSpecific

ProtocolSpecific.Smb2

ProtocolSpecific.Smb2.Server

ProtocolSpecific.Smb2.Server.Capabilities

ProtocolSpecific.Smb2.Share

ProtocolSpecific.Smb2.Share.Capabilities

ProtocolSpecific.Smb2.Share.ShareFlags

ProtocolSpecific.Smb2.Share.CachingFlags

ProtocolSpecific.Smb2.Share.ShareType

ProtocolSpecific.Smb2.Share.Reserved0[3]

ProtocolSpecific.Smb2.Share.Reserved1

ProtocolSpecific.Reserved[16]

Requisitos

Requisito Valor
Cabeçalho ntifs.h

Confira também

FILE_INFORMATION_CLASS

FltQueryInformationFile