FILE_REMOTE_PROTOCOL_INFO struttura (winbase.h)

Contiene informazioni sul protocollo remoto del file. Questa struttura viene restituita dalla funzione GetFileInformationByHandleEx quando FileRemoteProtocolInfo viene passato nel parametro FileInformationClass .

Sintassi

typedef struct _FILE_REMOTE_PROTOCOL_INFO {
  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;
      } Share;
    } Smb2;
    ULONG Reserved[16];
  } ProtocolSpecific;
} FILE_REMOTE_PROTOCOL_INFO, *PFILE_REMOTE_PROTOCOL_INFO;

Members

StructureVersion

Versione di questa struttura. Questo membro deve essere impostato su 2 se la comunicazione è tra computer che eseguono Windows 8, Windows Server 2012 o versioni successive e 1 in caso contrario.

StructureSize

Dimensioni di questa struttura. Questo membro deve essere impostato su sizeof(FILE_REMOTE_PROTOCOL_INFO).

Protocol

Protocollo remoto (WNNC_NET_*) definito in Wnnc.h o Ntifs.h.

WNNC_NET_MSNET (0x00010000)

WNNC_NET_SMB (0x00020000)

WNNC_NET_LANMAN (0x00020000)

WNNC_NET_NETWARE (0x00030000)

WNNC_NET_VINES (0x00040000)

WNNC_NET_10NET (0x00050000)

WNNC_NET_LOCUS (0x00060000)

WNNC_NET_SUN_PC_NFS (0x00070000)

WNNC_NET_LANSTEP (0x00080000)

WNNC_NET_9TILES (0x00090000)

WNNC_NET_LANTASTIC (0x000A0000)

WNNC_NET_AS400 (0x000B0000)

WNNC_NET_FTP_NFS (0x000C0000)

WNNC_NET_PATHWORKS (0x000D0000)

WNNC_NET_LIFENET (0x000E0000)

WNNC_NET_POWERLAN (0x000F0000)

WNNC_NET_BWNFS (0x00100000)

WNNC_NET_COGENT (0x00110000)

WNNC_NET_FARALLON (0x00120000)

WNNC_NET_APPLETALK (0x00130000)

WNNC_NET_INTERGRAPH (0x00140000)

WNNC_NET_SYMFONET (0x00150000)

WNNC_NET_CLEARCASE (0x00160000)

WNNC_NET_FRONTIER (0x00170000)

WNNC_NET_BMC (0x00180000)

WNNC_NET_DCE (0x00190000)

WNNC_NET_AVID (0x001A0000)

WNNC_NET_DOCUSPACE (0x001B0000)

WNNC_NET_MANGOSOFT (0x001C0000)

WNNC_NET_SERNET (0x001D0000)

WNNC_NET_RIVERFRONT1 (0x001E0000)

WNNC_NET_RIVERFRONT2 (0x001F0000)

WNNC_NET_DECORB (0x00200000)

WNNC_NET_PROTSTOR (0x00210000)

WNNC_NET_FJ_REDIR (0x00220000)

WNNC_NET_DISTINCT (0x00230000)

WNNC_NET_TWINS (0x00240000)

WNNC_NET_RDR2SAMPLE (0x00250000)

WNNC_NET_CSC (0x00260000)

WNNC_NET_3IN1 (0x00270000)

WNNC_NET_EXTENDNET (0x00290000)

WNNC_NET_STAC (0x002A0000)

WNNC_NET_FOXBAT (0x002B0000)

WNNC_NET_YAHOO (0x002C0000)

WNNC_NET_EXIFS (0x002D0000)

WNNC_NET_DAV (0x002E0000)

WNNC_NET_KNOWARE (0x002F0000)

WNNC_NET_OBJECT_DIRE (0x00300000)

WNNC_NET_MASFAX (0x00310000)

WNNC_NET_HOB_NFS (0x00320000)

WNNC_NET_SHIVA (0x00330000)

WNNC_NET_IBMAL (0x00340000)

WNNC_NET_LOCK (0x00350000)

WNNC_NET_TERMSRV (0x00360000)

WNNC_NET_SRT (0x00370000)

WNNC_NET_QUINCY (0x00380000)

WNNC_NET_OPENAFS (0x00390000)

WNNC_NET_AVID1 (0x003A0000)

WNNC_NET_DFS (0x003B0000)

WNNC_NET_KWNP (0x003C0000)

WNNC_NET_ZENWORKS (0x003D0000)

WNNC_NET_DRIVEONWEB (0x003E0000)

WNNC_NET_VMWARE (0x003F0000)

WNNC_NET_RSFX (0x00400000)

WNNC_NET_MFILES (0x00410000)

WNNC_NET_MS_NFS (0x00420000)

WNNC_NET_GOOGLE (0x00430000)

WNNC_NET_NDFS (0x00440000)

ProtocolMajorVersion

Versione principale del protocollo remoto.

ProtocolMinorVersion

Versione secondaria del protocollo remoto.

ProtocolRevision

Revisione del protocollo remoto.

Reserved

Deve essere impostato su zero. Non usare questo membro.

Flags

Informazioni sul protocollo remoto. Questo membro può essere impostato su zero o più dei flag seguenti.

Valore Significato
REMOTE_PROTOCOL_FLAG_LOOPBACK
0x1
Il protocollo remoto usa un loopback.
REMOTE_PROTOCOL_FLAG_OFFLINE
0x2
Il protocollo remoto usa una cache offline.
REMOTE_PROTOCOL_INFO_FLAG_PERSISTENT_HANDLE
0x4
Il protocollo remoto usa un handle persistente.

Windows 7 e Windows Server 2008 R2: Questo flag non è supportato prima di Windows 8 e Windows Server 2012.

REMOTE_PROTOCOL_INFO_FLAG_PRIVACY
0x8
Il protocollo remoto usa la privacy. Questa opzione è supportata solo se il membro StructureVersion è 2 o superiore.

Windows 7 e Windows Server 2008 R2: Questo flag non è supportato prima di Windows 8 e Windows Server 2012.

REMOTE_PROTOCOL_INFO_FLAG_INTEGRITY
0x10
Il protocollo remoto usa l'integrità in modo che i dati vengano firmati. Questa opzione è supportata solo se il membro StructureVersion è 2 o superiore.

Windows 7 e Windows Server 2008 R2: Questo flag non è supportato prima di Windows 8 e Windows Server 2012.

REMOTE_PROTOCOL_INFO_FLAG_MUTUAL_AUTH
0x20
Il protocollo remoto usa l'autenticazione reciproca tramite Kerberos. Questa opzione è supportata solo se il membro StructureVersion è 2 o superiore.

Windows 7 e Windows Server 2008 R2: Questo flag non è supportato prima di Windows 8 e Windows Server 2012.

GenericReserved

Struttura di informazioni generica del protocollo.

GenericReserved.Reserved[8]

Deve essere impostato su zero. Non utilizzare questo membro.

ProtocolSpecificReserved

Struttura delle informazioni specifiche del protocollo.

ProtocolSpecificReserved.Reserved[16]

Deve essere impostato su zero. Non utilizzare questo membro.

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.Reserved[16]

Commenti

La struttura FILE_REMOTE_PROTOCOL_INFO è valida solo per l'uso con la funzione GetFileInformationByHandleEx .

Requisiti

Requisito Valore
Client minimo supportato Windows 7 [solo app desktop]
Server minimo supportato Windows Server 2008 R2 [solo app desktop]
Intestazione winbase.h (include Windows.h)

Vedi anche

FILE_INFO_BY_HANDLE_CLASS

GetFileInformationByHandleEx